
import Base.zero


export
    AVCodecID,
    AV_CODEC_ID_NONE,
    AV_CODEC_ID_MPEG1VIDEO,
    AV_CODEC_ID_MPEG2VIDEO,
    AV_CODEC_ID_MPEG2VIDEO_XVMC,
    AV_CODEC_ID_H261,
    AV_CODEC_ID_H263,
    AV_CODEC_ID_RV10,
    AV_CODEC_ID_RV20,
    AV_CODEC_ID_MJPEG,
    AV_CODEC_ID_MJPEGB,
    AV_CODEC_ID_LJPEG,
    AV_CODEC_ID_SP5X,
    AV_CODEC_ID_JPEGLS,
    AV_CODEC_ID_MPEG4,
    AV_CODEC_ID_RAWVIDEO,
    AV_CODEC_ID_MSMPEG4V1,
    AV_CODEC_ID_MSMPEG4V2,
    AV_CODEC_ID_MSMPEG4V3,
    AV_CODEC_ID_WMV1,
    AV_CODEC_ID_WMV2,
    AV_CODEC_ID_H263P,
    AV_CODEC_ID_H263I,
    AV_CODEC_ID_FLV1,
    AV_CODEC_ID_SVQ1,
    AV_CODEC_ID_SVQ3,
    AV_CODEC_ID_DVVIDEO,
    AV_CODEC_ID_HUFFYUV,
    AV_CODEC_ID_CYUV,
    AV_CODEC_ID_H264,
    AV_CODEC_ID_INDEO3,
    AV_CODEC_ID_VP3,
    AV_CODEC_ID_THEORA,
    AV_CODEC_ID_ASV1,
    AV_CODEC_ID_ASV2,
    AV_CODEC_ID_FFV1,
    AV_CODEC_ID_4XM,
    AV_CODEC_ID_VCR1,
    AV_CODEC_ID_CLJR,
    AV_CODEC_ID_MDEC,
    AV_CODEC_ID_ROQ,
    AV_CODEC_ID_INTERPLAY_VIDEO,
    AV_CODEC_ID_XAN_WC3,
    AV_CODEC_ID_XAN_WC4,
    AV_CODEC_ID_RPZA,
    AV_CODEC_ID_CINEPAK,
    AV_CODEC_ID_WS_VQA,
    AV_CODEC_ID_MSRLE,
    AV_CODEC_ID_MSVIDEO1,
    AV_CODEC_ID_IDCIN,
    AV_CODEC_ID_8BPS,
    AV_CODEC_ID_SMC,
    AV_CODEC_ID_FLIC,
    AV_CODEC_ID_TRUEMOTION1,
    AV_CODEC_ID_VMDVIDEO,
    AV_CODEC_ID_MSZH,
    AV_CODEC_ID_ZLIB,
    AV_CODEC_ID_QTRLE,
    AV_CODEC_ID_TSCC,
    AV_CODEC_ID_ULTI,
    AV_CODEC_ID_QDRAW,
    AV_CODEC_ID_VIXL,
    AV_CODEC_ID_QPEG,
    AV_CODEC_ID_PNG,
    AV_CODEC_ID_PPM,
    AV_CODEC_ID_PBM,
    AV_CODEC_ID_PGM,
    AV_CODEC_ID_PGMYUV,
    AV_CODEC_ID_PAM,
    AV_CODEC_ID_FFVHUFF,
    AV_CODEC_ID_RV30,
    AV_CODEC_ID_RV40,
    AV_CODEC_ID_VC1,
    AV_CODEC_ID_WMV3,
    AV_CODEC_ID_LOCO,
    AV_CODEC_ID_WNV1,
    AV_CODEC_ID_AASC,
    AV_CODEC_ID_INDEO2,
    AV_CODEC_ID_FRAPS,
    AV_CODEC_ID_TRUEMOTION2,
    AV_CODEC_ID_BMP,
    AV_CODEC_ID_CSCD,
    AV_CODEC_ID_MMVIDEO,
    AV_CODEC_ID_ZMBV,
    AV_CODEC_ID_AVS,
    AV_CODEC_ID_SMACKVIDEO,
    AV_CODEC_ID_NUV,
    AV_CODEC_ID_KMVC,
    AV_CODEC_ID_FLASHSV,
    AV_CODEC_ID_CAVS,
    AV_CODEC_ID_JPEG2000,
    AV_CODEC_ID_VMNC,
    AV_CODEC_ID_VP5,
    AV_CODEC_ID_VP6,
    AV_CODEC_ID_VP6F,
    AV_CODEC_ID_TARGA,
    AV_CODEC_ID_DSICINVIDEO,
    AV_CODEC_ID_TIERTEXSEQVIDEO,
    AV_CODEC_ID_TIFF,
    AV_CODEC_ID_GIF,
    AV_CODEC_ID_DXA,
    AV_CODEC_ID_DNXHD,
    AV_CODEC_ID_THP,
    AV_CODEC_ID_SGI,
    AV_CODEC_ID_C93,
    AV_CODEC_ID_BETHSOFTVID,
    AV_CODEC_ID_PTX,
    AV_CODEC_ID_TXD,
    AV_CODEC_ID_VP6A,
    AV_CODEC_ID_AMV,
    AV_CODEC_ID_VB,
    AV_CODEC_ID_PCX,
    AV_CODEC_ID_SUNRAST,
    AV_CODEC_ID_INDEO4,
    AV_CODEC_ID_INDEO5,
    AV_CODEC_ID_MIMIC,
    AV_CODEC_ID_RL2,
    AV_CODEC_ID_ESCAPE124,
    AV_CODEC_ID_DIRAC,
    AV_CODEC_ID_BFI,
    AV_CODEC_ID_CMV,
    AV_CODEC_ID_MOTIONPIXELS,
    AV_CODEC_ID_TGV,
    AV_CODEC_ID_TGQ,
    AV_CODEC_ID_TQI,
    AV_CODEC_ID_AURA,
    AV_CODEC_ID_AURA2,
    AV_CODEC_ID_V210X,
    AV_CODEC_ID_TMV,
    AV_CODEC_ID_V210,
    AV_CODEC_ID_DPX,
    AV_CODEC_ID_MAD,
    AV_CODEC_ID_FRWU,
    AV_CODEC_ID_FLASHSV2,
    AV_CODEC_ID_CDGRAPHICS,
    AV_CODEC_ID_R210,
    AV_CODEC_ID_ANM,
    AV_CODEC_ID_BINKVIDEO,
    AV_CODEC_ID_IFF_ILBM,
    AV_CODEC_ID_IFF_BYTERUN1,
    AV_CODEC_ID_KGV1,
    AV_CODEC_ID_YOP,
    AV_CODEC_ID_VP8,
    AV_CODEC_ID_PICTOR,
    AV_CODEC_ID_ANSI,
    AV_CODEC_ID_A64_MULTI,
    AV_CODEC_ID_A64_MULTI5,
    AV_CODEC_ID_R10K,
    AV_CODEC_ID_MXPEG,
    AV_CODEC_ID_LAGARITH,
    AV_CODEC_ID_PRORES,
    AV_CODEC_ID_JV,
    AV_CODEC_ID_DFA,
    AV_CODEC_ID_WMV3IMAGE,
    AV_CODEC_ID_VC1IMAGE,
    AV_CODEC_ID_UTVIDEO,
    AV_CODEC_ID_BMV_VIDEO,
    AV_CODEC_ID_VBLE,
    AV_CODEC_ID_DXTORY,
    AV_CODEC_ID_V410,
    AV_CODEC_ID_XWD,
    AV_CODEC_ID_CDXL,
    AV_CODEC_ID_XBM,
    AV_CODEC_ID_ZEROCODEC,
    AV_CODEC_ID_MSS1,
    AV_CODEC_ID_MSA1,
    AV_CODEC_ID_TSCC2,
    AV_CODEC_ID_MTS2,
    AV_CODEC_ID_CLLC,
    AV_CODEC_ID_MSS2,
    AV_CODEC_ID_VP9,
    AV_CODEC_ID_AIC,
    AV_CODEC_ID_ESCAPE130_DEPRECATED,
    AV_CODEC_ID_G2M_DEPRECATED,
    AV_CODEC_ID_WEBP_DEPRECATED,
    AV_CODEC_ID_HNM4_VIDEO,
    AV_CODEC_ID_HEVC_DEPRECATED,
    AV_CODEC_ID_FIC,
    AV_CODEC_ID_ALIAS_PIX,
    AV_CODEC_ID_BRENDER_PIX_DEPRECATED,
    AV_CODEC_ID_PAF_VIDEO_DEPRECATED,
    AV_CODEC_ID_EXR_DEPRECATED,
    AV_CODEC_ID_VP7_DEPRECATED,
    AV_CODEC_ID_SANM_DEPRECATED,
    AV_CODEC_ID_SGIRLE_DEPRECATED,
    AV_CODEC_ID_MVC1_DEPRECATED,
    AV_CODEC_ID_MVC2_DEPRECATED,
    AV_CODEC_ID_BRENDER_PIX,
    AV_CODEC_ID_Y41P,
    AV_CODEC_ID_ESCAPE130,
    AV_CODEC_ID_EXR,
    AV_CODEC_ID_AVRP,
    AV_CODEC_ID_012V,
    AV_CODEC_ID_G2M,
    AV_CODEC_ID_AVUI,
    AV_CODEC_ID_AYUV,
    AV_CODEC_ID_TARGA_Y216,
    AV_CODEC_ID_V308,
    AV_CODEC_ID_V408,
    AV_CODEC_ID_YUV4,
    AV_CODEC_ID_SANM,
    AV_CODEC_ID_PAF_VIDEO,
    AV_CODEC_ID_AVRN,
    AV_CODEC_ID_CPIA,
    AV_CODEC_ID_XFACE,
    AV_CODEC_ID_SGIRLE,
    AV_CODEC_ID_MVC1,
    AV_CODEC_ID_MVC2,
    AV_CODEC_ID_SNOW,
    AV_CODEC_ID_WEBP,
    AV_CODEC_ID_SMVJPEG,
    AV_CODEC_ID_HEVC,
    AV_CODEC_ID_VP7,
    AV_CODEC_ID_FIRST_AUDIO,
    AV_CODEC_ID_PCM_S16LE,
    AV_CODEC_ID_PCM_S16BE,
    AV_CODEC_ID_PCM_U16LE,
    AV_CODEC_ID_PCM_U16BE,
    AV_CODEC_ID_PCM_S8,
    AV_CODEC_ID_PCM_U8,
    AV_CODEC_ID_PCM_MULAW,
    AV_CODEC_ID_PCM_ALAW,
    AV_CODEC_ID_PCM_S32LE,
    AV_CODEC_ID_PCM_S32BE,
    AV_CODEC_ID_PCM_U32LE,
    AV_CODEC_ID_PCM_U32BE,
    AV_CODEC_ID_PCM_S24LE,
    AV_CODEC_ID_PCM_S24BE,
    AV_CODEC_ID_PCM_U24LE,
    AV_CODEC_ID_PCM_U24BE,
    AV_CODEC_ID_PCM_S24DAUD,
    AV_CODEC_ID_PCM_ZORK,
    AV_CODEC_ID_PCM_S16LE_PLANAR,
    AV_CODEC_ID_PCM_DVD,
    AV_CODEC_ID_PCM_F32BE,
    AV_CODEC_ID_PCM_F32LE,
    AV_CODEC_ID_PCM_F64BE,
    AV_CODEC_ID_PCM_F64LE,
    AV_CODEC_ID_PCM_BLURAY,
    AV_CODEC_ID_PCM_LXF,
    AV_CODEC_ID_S302M,
    AV_CODEC_ID_PCM_S8_PLANAR,
    AV_CODEC_ID_PCM_S24LE_PLANAR_DEPRECATED,
    AV_CODEC_ID_PCM_S32LE_PLANAR_DEPRECATED,
    AV_CODEC_ID_PCM_S24LE_PLANAR,
    AV_CODEC_ID_PCM_S32LE_PLANAR,
    AV_CODEC_ID_PCM_S16BE_PLANAR,
    AV_CODEC_ID_ADPCM_IMA_QT,
    AV_CODEC_ID_ADPCM_IMA_WAV,
    AV_CODEC_ID_ADPCM_IMA_DK3,
    AV_CODEC_ID_ADPCM_IMA_DK4,
    AV_CODEC_ID_ADPCM_IMA_WS,
    AV_CODEC_ID_ADPCM_IMA_SMJPEG,
    AV_CODEC_ID_ADPCM_MS,
    AV_CODEC_ID_ADPCM_4XM,
    AV_CODEC_ID_ADPCM_XA,
    AV_CODEC_ID_ADPCM_ADX,
    AV_CODEC_ID_ADPCM_EA,
    AV_CODEC_ID_ADPCM_G726,
    AV_CODEC_ID_ADPCM_CT,
    AV_CODEC_ID_ADPCM_SWF,
    AV_CODEC_ID_ADPCM_YAMAHA,
    AV_CODEC_ID_ADPCM_SBPRO_4,
    AV_CODEC_ID_ADPCM_SBPRO_3,
    AV_CODEC_ID_ADPCM_SBPRO_2,
    AV_CODEC_ID_ADPCM_THP,
    AV_CODEC_ID_ADPCM_IMA_AMV,
    AV_CODEC_ID_ADPCM_EA_R1,
    AV_CODEC_ID_ADPCM_EA_R3,
    AV_CODEC_ID_ADPCM_EA_R2,
    AV_CODEC_ID_ADPCM_IMA_EA_SEAD,
    AV_CODEC_ID_ADPCM_IMA_EA_EACS,
    AV_CODEC_ID_ADPCM_EA_XAS,
    AV_CODEC_ID_ADPCM_EA_MAXIS_XA,
    AV_CODEC_ID_ADPCM_IMA_ISS,
    AV_CODEC_ID_ADPCM_G722,
    AV_CODEC_ID_ADPCM_IMA_APC,
    AV_CODEC_ID_ADPCM_VIMA_DEPRECATED,
    AV_CODEC_ID_ADPCM_VIMA,
    AV_CODEC_ID_VIMA,
    AV_CODEC_ID_ADPCM_AFC,
    AV_CODEC_ID_ADPCM_IMA_OKI,
    AV_CODEC_ID_ADPCM_DTK,
    AV_CODEC_ID_ADPCM_IMA_RAD,
    AV_CODEC_ID_ADPCM_G726LE,
    AV_CODEC_ID_AMR_NB,
    AV_CODEC_ID_AMR_WB,
    AV_CODEC_ID_RA_144,
    AV_CODEC_ID_RA_288,
    AV_CODEC_ID_ROQ_DPCM,
    AV_CODEC_ID_INTERPLAY_DPCM,
    AV_CODEC_ID_XAN_DPCM,
    AV_CODEC_ID_SOL_DPCM,
    AV_CODEC_ID_MP2,
    AV_CODEC_ID_MP3,
    AV_CODEC_ID_AAC,
    AV_CODEC_ID_AC3,
    AV_CODEC_ID_DTS,
    AV_CODEC_ID_VORBIS,
    AV_CODEC_ID_DVAUDIO,
    AV_CODEC_ID_WMAV1,
    AV_CODEC_ID_WMAV2,
    AV_CODEC_ID_MACE3,
    AV_CODEC_ID_MACE6,
    AV_CODEC_ID_VMDAUDIO,
    AV_CODEC_ID_FLAC,
    AV_CODEC_ID_MP3ADU,
    AV_CODEC_ID_MP3ON4,
    AV_CODEC_ID_SHORTEN,
    AV_CODEC_ID_ALAC,
    AV_CODEC_ID_WESTWOOD_SND1,
    AV_CODEC_ID_GSM,
    AV_CODEC_ID_QDM2,
    AV_CODEC_ID_COOK,
    AV_CODEC_ID_TRUESPEECH,
    AV_CODEC_ID_TTA,
    AV_CODEC_ID_SMACKAUDIO,
    AV_CODEC_ID_QCELP,
    AV_CODEC_ID_WAVPACK,
    AV_CODEC_ID_DSICINAUDIO,
    AV_CODEC_ID_IMC,
    AV_CODEC_ID_MUSEPACK7,
    AV_CODEC_ID_MLP,
    AV_CODEC_ID_GSM_MS,
    AV_CODEC_ID_ATRAC3,
    AV_CODEC_ID_VOXWARE,
    AV_CODEC_ID_APE,
    AV_CODEC_ID_NELLYMOSER,
    AV_CODEC_ID_MUSEPACK8,
    AV_CODEC_ID_SPEEX,
    AV_CODEC_ID_WMAVOICE,
    AV_CODEC_ID_WMAPRO,
    AV_CODEC_ID_WMALOSSLESS,
    AV_CODEC_ID_ATRAC3P,
    AV_CODEC_ID_EAC3,
    AV_CODEC_ID_SIPR,
    AV_CODEC_ID_MP1,
    AV_CODEC_ID_TWINVQ,
    AV_CODEC_ID_TRUEHD,
    AV_CODEC_ID_MP4ALS,
    AV_CODEC_ID_ATRAC1,
    AV_CODEC_ID_BINKAUDIO_RDFT,
    AV_CODEC_ID_BINKAUDIO_DCT,
    AV_CODEC_ID_AAC_LATM,
    AV_CODEC_ID_QDMC,
    AV_CODEC_ID_CELT,
    AV_CODEC_ID_G723_1,
    AV_CODEC_ID_G729,
    AV_CODEC_ID_8SVX_EXP,
    AV_CODEC_ID_8SVX_FIB,
    AV_CODEC_ID_BMV_AUDIO,
    AV_CODEC_ID_RALF,
    AV_CODEC_ID_IAC,
    AV_CODEC_ID_ILBC,
    AV_CODEC_ID_OPUS_DEPRECATED,
    AV_CODEC_ID_COMFORT_NOISE,
    AV_CODEC_ID_TAK_DEPRECATED,
    AV_CODEC_ID_METASOUND,
    AV_CODEC_ID_PAF_AUDIO_DEPRECATED,
    AV_CODEC_ID_ON2AVC,
    AV_CODEC_ID_FFWAVESYNTH,
    AV_CODEC_ID_SONIC,
    AV_CODEC_ID_SONIC_LS,
    AV_CODEC_ID_PAF_AUDIO,
    AV_CODEC_ID_OPUS,
    AV_CODEC_ID_TAK,
    AV_CODEC_ID_EVRC,
    AV_CODEC_ID_SMV,
    AV_CODEC_ID_DSD_LSBF,
    AV_CODEC_ID_DSD_MSBF,
    AV_CODEC_ID_DSD_LSBF_PLANAR,
    AV_CODEC_ID_DSD_MSBF_PLANAR,
    AV_CODEC_ID_FIRST_SUBTITLE,
    AV_CODEC_ID_DVD_SUBTITLE,
    AV_CODEC_ID_DVB_SUBTITLE,
    AV_CODEC_ID_TEXT,
    AV_CODEC_ID_XSUB,
    AV_CODEC_ID_SSA,
    AV_CODEC_ID_MOV_TEXT,
    AV_CODEC_ID_HDMV_PGS_SUBTITLE,
    AV_CODEC_ID_DVB_TELETEXT,
    AV_CODEC_ID_SRT,
    AV_CODEC_ID_MICRODVD,
    AV_CODEC_ID_EIA_608,
    AV_CODEC_ID_JACOSUB,
    AV_CODEC_ID_SAMI,
    AV_CODEC_ID_REALTEXT,
    AV_CODEC_ID_SUBVIEWER1,
    AV_CODEC_ID_SUBVIEWER,
    AV_CODEC_ID_SUBRIP,
    AV_CODEC_ID_WEBVTT,
    AV_CODEC_ID_MPL2,
    AV_CODEC_ID_VPLAYER,
    AV_CODEC_ID_PJS,
    AV_CODEC_ID_ASS,
    AV_CODEC_ID_FIRST_UNKNOWN,
    AV_CODEC_ID_TTF,
    AV_CODEC_ID_BINTEXT,
    AV_CODEC_ID_XBIN,
    AV_CODEC_ID_IDF,
    AV_CODEC_ID_OTF,
    AV_CODEC_ID_SMPTE_KLV,
    AV_CODEC_ID_DVD_NAV,
    AV_CODEC_ID_TIMED_ID3,
    AV_CODEC_ID_BIN_DATA,
    AV_CODEC_ID_PROBE,
    AV_CODEC_ID_MPEG2TS,
    AV_CODEC_ID_MPEG4SYSTEMS,
    AV_CODEC_ID_FFMETADATA,
    CODEC_ID_NONE,
    CODEC_ID_MPEG1VIDEO,
    CODEC_ID_MPEG2VIDEO,
    CODEC_ID_MPEG2VIDEO_XVMC,
    CODEC_ID_H261,
    CODEC_ID_H263,
    CODEC_ID_RV10,
    CODEC_ID_RV20,
    CODEC_ID_MJPEG,
    CODEC_ID_MJPEGB,
    CODEC_ID_LJPEG,
    CODEC_ID_SP5X,
    CODEC_ID_JPEGLS,
    CODEC_ID_MPEG4,
    CODEC_ID_RAWVIDEO,
    CODEC_ID_MSMPEG4V1,
    CODEC_ID_MSMPEG4V2,
    CODEC_ID_MSMPEG4V3,
    CODEC_ID_WMV1,
    CODEC_ID_WMV2,
    CODEC_ID_H263P,
    CODEC_ID_H263I,
    CODEC_ID_FLV1,
    CODEC_ID_SVQ1,
    CODEC_ID_SVQ3,
    CODEC_ID_DVVIDEO,
    CODEC_ID_HUFFYUV,
    CODEC_ID_CYUV,
    CODEC_ID_H264,
    CODEC_ID_INDEO3,
    CODEC_ID_VP3,
    CODEC_ID_THEORA,
    CODEC_ID_ASV1,
    CODEC_ID_ASV2,
    CODEC_ID_FFV1,
    CODEC_ID_4XM,
    CODEC_ID_VCR1,
    CODEC_ID_CLJR,
    CODEC_ID_MDEC,
    CODEC_ID_ROQ,
    CODEC_ID_INTERPLAY_VIDEO,
    CODEC_ID_XAN_WC3,
    CODEC_ID_XAN_WC4,
    CODEC_ID_RPZA,
    CODEC_ID_CINEPAK,
    CODEC_ID_WS_VQA,
    CODEC_ID_MSRLE,
    CODEC_ID_MSVIDEO1,
    CODEC_ID_IDCIN,
    CODEC_ID_8BPS,
    CODEC_ID_SMC,
    CODEC_ID_FLIC,
    CODEC_ID_TRUEMOTION1,
    CODEC_ID_VMDVIDEO,
    CODEC_ID_MSZH,
    CODEC_ID_ZLIB,
    CODEC_ID_QTRLE,
    CODEC_ID_TSCC,
    CODEC_ID_ULTI,
    CODEC_ID_QDRAW,
    CODEC_ID_VIXL,
    CODEC_ID_QPEG,
    CODEC_ID_PNG,
    CODEC_ID_PPM,
    CODEC_ID_PBM,
    CODEC_ID_PGM,
    CODEC_ID_PGMYUV,
    CODEC_ID_PAM,
    CODEC_ID_FFVHUFF,
    CODEC_ID_RV30,
    CODEC_ID_RV40,
    CODEC_ID_VC1,
    CODEC_ID_WMV3,
    CODEC_ID_LOCO,
    CODEC_ID_WNV1,
    CODEC_ID_AASC,
    CODEC_ID_INDEO2,
    CODEC_ID_FRAPS,
    CODEC_ID_TRUEMOTION2,
    CODEC_ID_BMP,
    CODEC_ID_CSCD,
    CODEC_ID_MMVIDEO,
    CODEC_ID_ZMBV,
    CODEC_ID_AVS,
    CODEC_ID_SMACKVIDEO,
    CODEC_ID_NUV,
    CODEC_ID_KMVC,
    CODEC_ID_FLASHSV,
    CODEC_ID_CAVS,
    CODEC_ID_JPEG2000,
    CODEC_ID_VMNC,
    CODEC_ID_VP5,
    CODEC_ID_VP6,
    CODEC_ID_VP6F,
    CODEC_ID_TARGA,
    CODEC_ID_DSICINVIDEO,
    CODEC_ID_TIERTEXSEQVIDEO,
    CODEC_ID_TIFF,
    CODEC_ID_GIF,
    CODEC_ID_DXA,
    CODEC_ID_DNXHD,
    CODEC_ID_THP,
    CODEC_ID_SGI,
    CODEC_ID_C93,
    CODEC_ID_BETHSOFTVID,
    CODEC_ID_PTX,
    CODEC_ID_TXD,
    CODEC_ID_VP6A,
    CODEC_ID_AMV,
    CODEC_ID_VB,
    CODEC_ID_PCX,
    CODEC_ID_SUNRAST,
    CODEC_ID_INDEO4,
    CODEC_ID_INDEO5,
    CODEC_ID_MIMIC,
    CODEC_ID_RL2,
    CODEC_ID_ESCAPE124,
    CODEC_ID_DIRAC,
    CODEC_ID_BFI,
    CODEC_ID_CMV,
    CODEC_ID_MOTIONPIXELS,
    CODEC_ID_TGV,
    CODEC_ID_TGQ,
    CODEC_ID_TQI,
    CODEC_ID_AURA,
    CODEC_ID_AURA2,
    CODEC_ID_V210X,
    CODEC_ID_TMV,
    CODEC_ID_V210,
    CODEC_ID_DPX,
    CODEC_ID_MAD,
    CODEC_ID_FRWU,
    CODEC_ID_FLASHSV2,
    CODEC_ID_CDGRAPHICS,
    CODEC_ID_R210,
    CODEC_ID_ANM,
    CODEC_ID_BINKVIDEO,
    CODEC_ID_IFF_ILBM,
    CODEC_ID_IFF_BYTERUN1,
    CODEC_ID_KGV1,
    CODEC_ID_YOP,
    CODEC_ID_VP8,
    CODEC_ID_PICTOR,
    CODEC_ID_ANSI,
    CODEC_ID_A64_MULTI,
    CODEC_ID_A64_MULTI5,
    CODEC_ID_R10K,
    CODEC_ID_MXPEG,
    CODEC_ID_LAGARITH,
    CODEC_ID_PRORES,
    CODEC_ID_JV,
    CODEC_ID_DFA,
    CODEC_ID_WMV3IMAGE,
    CODEC_ID_VC1IMAGE,
    CODEC_ID_UTVIDEO,
    CODEC_ID_BMV_VIDEO,
    CODEC_ID_VBLE,
    CODEC_ID_DXTORY,
    CODEC_ID_V410,
    CODEC_ID_XWD,
    CODEC_ID_CDXL,
    CODEC_ID_XBM,
    CODEC_ID_ZEROCODEC,
    CODEC_ID_MSS1,
    CODEC_ID_MSA1,
    CODEC_ID_TSCC2,
    CODEC_ID_MTS2,
    CODEC_ID_CLLC,
    CODEC_ID_Y41P,
    CODEC_ID_ESCAPE130,
    CODEC_ID_EXR,
    CODEC_ID_AVRP,
    CODEC_ID_G2M,
    CODEC_ID_AVUI,
    CODEC_ID_AYUV,
    CODEC_ID_V308,
    CODEC_ID_V408,
    CODEC_ID_YUV4,
    CODEC_ID_SANM,
    CODEC_ID_PAF_VIDEO,
    CODEC_ID_SNOW,
    CODEC_ID_FIRST_AUDIO,
    CODEC_ID_PCM_S16LE,
    CODEC_ID_PCM_S16BE,
    CODEC_ID_PCM_U16LE,
    CODEC_ID_PCM_U16BE,
    CODEC_ID_PCM_S8,
    CODEC_ID_PCM_U8,
    CODEC_ID_PCM_MULAW,
    CODEC_ID_PCM_ALAW,
    CODEC_ID_PCM_S32LE,
    CODEC_ID_PCM_S32BE,
    CODEC_ID_PCM_U32LE,
    CODEC_ID_PCM_U32BE,
    CODEC_ID_PCM_S24LE,
    CODEC_ID_PCM_S24BE,
    CODEC_ID_PCM_U24LE,
    CODEC_ID_PCM_U24BE,
    CODEC_ID_PCM_S24DAUD,
    CODEC_ID_PCM_ZORK,
    CODEC_ID_PCM_S16LE_PLANAR,
    CODEC_ID_PCM_DVD,
    CODEC_ID_PCM_F32BE,
    CODEC_ID_PCM_F32LE,
    CODEC_ID_PCM_F64BE,
    CODEC_ID_PCM_F64LE,
    CODEC_ID_PCM_BLURAY,
    CODEC_ID_PCM_LXF,
    CODEC_ID_S302M,
    CODEC_ID_PCM_S8_PLANAR,
    CODEC_ID_ADPCM_IMA_QT,
    CODEC_ID_ADPCM_IMA_WAV,
    CODEC_ID_ADPCM_IMA_DK3,
    CODEC_ID_ADPCM_IMA_DK4,
    CODEC_ID_ADPCM_IMA_WS,
    CODEC_ID_ADPCM_IMA_SMJPEG,
    CODEC_ID_ADPCM_MS,
    CODEC_ID_ADPCM_4XM,
    CODEC_ID_ADPCM_XA,
    CODEC_ID_ADPCM_ADX,
    CODEC_ID_ADPCM_EA,
    CODEC_ID_ADPCM_G726,
    CODEC_ID_ADPCM_CT,
    CODEC_ID_ADPCM_SWF,
    CODEC_ID_ADPCM_YAMAHA,
    CODEC_ID_ADPCM_SBPRO_4,
    CODEC_ID_ADPCM_SBPRO_3,
    CODEC_ID_ADPCM_SBPRO_2,
    CODEC_ID_ADPCM_THP,
    CODEC_ID_ADPCM_IMA_AMV,
    CODEC_ID_ADPCM_EA_R1,
    CODEC_ID_ADPCM_EA_R3,
    CODEC_ID_ADPCM_EA_R2,
    CODEC_ID_ADPCM_IMA_EA_SEAD,
    CODEC_ID_ADPCM_IMA_EA_EACS,
    CODEC_ID_ADPCM_EA_XAS,
    CODEC_ID_ADPCM_EA_MAXIS_XA,
    CODEC_ID_ADPCM_IMA_ISS,
    CODEC_ID_ADPCM_G722,
    CODEC_ID_ADPCM_IMA_APC,
    CODEC_ID_VIMA,
    CODEC_ID_AMR_NB,
    CODEC_ID_AMR_WB,
    CODEC_ID_RA_144,
    CODEC_ID_RA_288,
    CODEC_ID_ROQ_DPCM,
    CODEC_ID_INTERPLAY_DPCM,
    CODEC_ID_XAN_DPCM,
    CODEC_ID_SOL_DPCM,
    CODEC_ID_MP2,
    CODEC_ID_MP3,
    CODEC_ID_AAC,
    CODEC_ID_AC3,
    CODEC_ID_DTS,
    CODEC_ID_VORBIS,
    CODEC_ID_DVAUDIO,
    CODEC_ID_WMAV1,
    CODEC_ID_WMAV2,
    CODEC_ID_MACE3,
    CODEC_ID_MACE6,
    CODEC_ID_VMDAUDIO,
    CODEC_ID_FLAC,
    CODEC_ID_MP3ADU,
    CODEC_ID_MP3ON4,
    CODEC_ID_SHORTEN,
    CODEC_ID_ALAC,
    CODEC_ID_WESTWOOD_SND1,
    CODEC_ID_GSM,
    CODEC_ID_QDM2,
    CODEC_ID_COOK,
    CODEC_ID_TRUESPEECH,
    CODEC_ID_TTA,
    CODEC_ID_SMACKAUDIO,
    CODEC_ID_QCELP,
    CODEC_ID_WAVPACK,
    CODEC_ID_DSICINAUDIO,
    CODEC_ID_IMC,
    CODEC_ID_MUSEPACK7,
    CODEC_ID_MLP,
    CODEC_ID_GSM_MS,
    CODEC_ID_ATRAC3,
    CODEC_ID_VOXWARE,
    CODEC_ID_APE,
    CODEC_ID_NELLYMOSER,
    CODEC_ID_MUSEPACK8,
    CODEC_ID_SPEEX,
    CODEC_ID_WMAVOICE,
    CODEC_ID_WMAPRO,
    CODEC_ID_WMALOSSLESS,
    CODEC_ID_ATRAC3P,
    CODEC_ID_EAC3,
    CODEC_ID_SIPR,
    CODEC_ID_MP1,
    CODEC_ID_TWINVQ,
    CODEC_ID_TRUEHD,
    CODEC_ID_MP4ALS,
    CODEC_ID_ATRAC1,
    CODEC_ID_BINKAUDIO_RDFT,
    CODEC_ID_BINKAUDIO_DCT,
    CODEC_ID_AAC_LATM,
    CODEC_ID_QDMC,
    CODEC_ID_CELT,
    CODEC_ID_G723_1,
    CODEC_ID_G729,
    CODEC_ID_8SVX_EXP,
    CODEC_ID_8SVX_FIB,
    CODEC_ID_BMV_AUDIO,
    CODEC_ID_RALF,
    CODEC_ID_IAC,
    CODEC_ID_ILBC,
    CODEC_ID_FFWAVESYNTH,
    CODEC_ID_SONIC,
    CODEC_ID_SONIC_LS,
    CODEC_ID_PAF_AUDIO,
    CODEC_ID_OPUS,
    CODEC_ID_FIRST_SUBTITLE,
    CODEC_ID_DVD_SUBTITLE,
    CODEC_ID_DVB_SUBTITLE,
    CODEC_ID_TEXT,
    CODEC_ID_XSUB,
    CODEC_ID_SSA,
    CODEC_ID_MOV_TEXT,
    CODEC_ID_HDMV_PGS_SUBTITLE,
    CODEC_ID_DVB_TELETEXT,
    CODEC_ID_SRT,
    CODEC_ID_MICRODVD,
    CODEC_ID_EIA_608,
    CODEC_ID_JACOSUB,
    CODEC_ID_SAMI,
    CODEC_ID_REALTEXT,
    CODEC_ID_SUBVIEWER,
    CODEC_ID_FIRST_UNKNOWN,
    CODEC_ID_TTF,
    CODEC_ID_BINTEXT,
    CODEC_ID_XBIN,
    CODEC_ID_IDF,
    CODEC_ID_OTF,
    CODEC_ID_PROBE,
    CODEC_ID_MPEG2TS,
    CODEC_ID_MPEG4SYSTEMS,
    CODEC_ID_FFMETADATA,
    AV_CODEC_ID_H265,
    AV_CODEC_PROP_INTRA_ONLY,
    AV_CODEC_PROP_LOSSY,
    AV_CODEC_PROP_LOSSLESS,
    AV_CODEC_PROP_BITMAP_SUB,
    AV_CODEC_PROP_TEXT_SUB,
    CODEC_FLAG_UNALIGNED,
    CODEC_FLAG_QSCALE,
    CODEC_FLAG_4MV,
    CODEC_FLAG_OUTPUT_CORRUPT,
    CODEC_FLAG_QPEL,
    CODEC_FLAG_GMC,
    CODEC_FLAG_MV0,
    CODEC_FLAG_INPUT_PRESERVED,
    CODEC_FLAG_PASS1,
    CODEC_FLAG_PASS2,
    CODEC_FLAG_GRAY,
    CODEC_FLAG_EMU_EDGE,
    CODEC_FLAG_PSNR,
    CODEC_FLAG_TRUNCATED,
    CODEC_FLAG_NORMALIZE_AQP,
    CODEC_FLAG_INTERLACED_DCT,
    CODEC_FLAG_LOW_DELAY,
    CODEC_FLAG_GLOBAL_HEADER,
    CODEC_FLAG_BITEXACT,
    CODEC_FLAG_AC_PRED,
    CODEC_FLAG_LOOP_FILTER,
    CODEC_FLAG_INTERLACED_ME,
    CODEC_FLAG_CLOSED_GOP,
    CODEC_FLAG2_FAST,
    CODEC_FLAG2_NO_OUTPUT,
    CODEC_FLAG2_LOCAL_HEADER,
    CODEC_FLAG2_DROP_FRAME_TIMECODE,
    CODEC_FLAG2_IGNORE_CROP,
    CODEC_FLAG2_CHUNKS,
    CODEC_FLAG2_SHOW_ALL,
    CODEC_CAP_DRAW_HORIZ_BAND,
    CODEC_CAP_DR1,
    CODEC_CAP_TRUNCATED,
    CODEC_CAP_HWACCEL,
    CODEC_CAP_DELAY,
    CODEC_CAP_SMALL_LAST_FRAME,
    CODEC_CAP_HWACCEL_VDPAU,
    CODEC_CAP_SUBFRAMES,
    CODEC_CAP_EXPERIMENTAL,
    CODEC_CAP_CHANNEL_CONF,
    CODEC_CAP_NEG_LINESIZES,
    CODEC_CAP_FRAME_THREADS,
    CODEC_CAP_SLICE_THREADS,
    CODEC_CAP_PARAM_CHANGE,
    CODEC_CAP_AUTO_THREADS,
    CODEC_CAP_VARIABLE_FRAME_SIZE,
    CODEC_CAP_INTRA_ONLY,
    CODEC_CAP_LOSSLESS,
    MB_TYPE_INTRA4x4,
    MB_TYPE_INTRA16x16,
    MB_TYPE_INTRA_PCM,
    MB_TYPE_16x16,
    MB_TYPE_16x8,
    MB_TYPE_8x16,
    MB_TYPE_8x8,
    MB_TYPE_INTERLACED,
    MB_TYPE_DIRECT2,
    MB_TYPE_ACPRED,
    MB_TYPE_GMC,
    MB_TYPE_SKIP,
    MB_TYPE_P0L0,
    MB_TYPE_P1L0,
    MB_TYPE_P0L1,
    MB_TYPE_P1L1,
    MB_TYPE_L0,
    MB_TYPE_L1,
    MB_TYPE_L0L1,
    MB_TYPE_QUANT,
    MB_TYPE_CBP,
    AV_GET_BUFFER_FLAG_REF,
    AV_PKT_FLAG_KEY,
    AV_PKT_FLAG_CORRUPT,
    SLICE_FLAG_CODED_ORDER,
    SLICE_FLAG_ALLOW_FIELD,
    SLICE_FLAG_ALLOW_PLANE,
    AV_EF_CRCCHECK,
    AV_EF_BITSTREAM,
    AV_EF_BUFFER,
    AV_EF_EXPLODE,
    AV_EF_IGNORE_ERR,
    AV_EF_CAREFUL,
    AV_EF_COMPLIANT,
    AV_EF_AGGRESSIVE,
    AV_SUBTITLE_FLAG_FORCED,
    AV_PARSER_PTS_NB,
    PARSER_FLAG_COMPLETE_FRAMES,
    PARSER_FLAG_ONCE,
    PARSER_FLAG_FETCHED_OFFSET,
    PARSER_FLAG_USE_CODEC_TS,
    AVCodecDescriptor,
    Motion_Est_ID,
    ME_ZERO,
    ME_FULL,
    ME_LOG,
    ME_PHODS,
    ME_EPZS,
    ME_X1,
    ME_HEX,
    ME_UMH,
    ME_TESA,
    ME_ITER,
    AVDiscard,
    AVDISCARD_NONE,
    AVDISCARD_DEFAULT,
    AVDISCARD_NONREF,
    AVDISCARD_BIDIR,
    AVDISCARD_NONINTRA,
    AVDISCARD_NONKEY,
    AVDISCARD_ALL,
    AVAudioServiceType,
    AV_AUDIO_SERVICE_TYPE_MAIN,
    AV_AUDIO_SERVICE_TYPE_EFFECTS,
    AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED,
    AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED,
    AV_AUDIO_SERVICE_TYPE_DIALOGUE,
    AV_AUDIO_SERVICE_TYPE_COMMENTARY,
    AV_AUDIO_SERVICE_TYPE_EMERGENCY,
    AV_AUDIO_SERVICE_TYPE_VOICE_OVER,
    AV_AUDIO_SERVICE_TYPE_KARAOKE,
    AV_AUDIO_SERVICE_TYPE_NB,
    RcOverride,
    Array_2_Int16,
    Array_3_Array_2_Int16,
    AVPanScan,
    AVPacketSideDataType,
    AV_PKT_DATA_PALETTE,
    AV_PKT_DATA_NEW_EXTRADATA,
    AV_PKT_DATA_PARAM_CHANGE,
    AV_PKT_DATA_H263_MB_INFO,
    AV_PKT_DATA_REPLAYGAIN,
    AV_PKT_DATA_DISPLAYMATRIX,
    AV_PKT_DATA_SKIP_SAMPLES,
    AV_PKT_DATA_JP_DUALMONO,
    AV_PKT_DATA_STRINGS_METADATA,
    AV_PKT_DATA_SUBTITLE_POSITION,
    AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL,
    AV_PKT_DATA_WEBVTT_IDENTIFIER,
    AV_PKT_DATA_WEBVTT_SETTINGS,
    AV_PKT_DATA_METADATA_UPDATE,
    AVPacketSideData,
    AVPacket,
    AVSideDataParamChangeFlags,
    AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT,
    AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT,
    AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE,
    AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS,
    AVCodecInternal,
    AVFieldOrder,
    AV_FIELD_UNKNOWN,
    AV_FIELD_PROGRESSIVE,
    AV_FIELD_TT,
    AV_FIELD_BB,
    AV_FIELD_TB,
    AV_FIELD_BT,
    Array_32_Uint8,
    Array_8_Uint64,
    AVProfile,
    AVCodecDefault,
    AVCodec,
    AVHWAccel,
    AVFrame,
    AVCodecContext,
    Array_8_Ptr,
    Array_8_Cint,
    AVPicture,
    AVSubtitleType,
    SUBTITLE_NONE,
    SUBTITLE_BITMAP,
    SUBTITLE_TEXT,
    SUBTITLE_ASS,
    AVSubtitleRect,
    AVSubtitle,
    MpegEncContext,
    AVPictureStructure,
    AV_PICTURE_STRUCTURE_UNKNOWN,
    AV_PICTURE_STRUCTURE_TOP_FIELD,
    AV_PICTURE_STRUCTURE_BOTTOM_FIELD,
    AV_PICTURE_STRUCTURE_FRAME,
    Array_4_Int64,
    Array_5_Cint,
    AVCodecParser,
    AVCodecParserContext,
    ReSampleContext,
    AVResampleContext,
    AVBitStreamFilter,
    AVBitStreamFilterContext,
    AVLockOp,
    AV_LOCK_CREATE,
    AV_LOCK_OBTAIN,
    AV_LOCK_RELEASE,
    AV_LOCK_DESTROY,
    DV_PROFILE_BYTES,
    Array_2_AVRational,
    Array_3_Cint,
    AVDVProfile #,
    # vaapi_context,
    # AVVDPAUPictureInfo,
    # AVVDPAU_Render2,
    # AVVDPAUContext,
    # vdpau_render_state,
    # AV_XVMC_ID,
    # xvmc_pix_fmt



# begin enum AVCodecID
const AVCodecID = UInt32
const AV_CODEC_ID_NONE  =  UInt32(0)
const AV_CODEC_ID_MPEG1VIDEO  =  UInt32(1)
const AV_CODEC_ID_MPEG2VIDEO  =  UInt32(2)
const AV_CODEC_ID_MPEG2VIDEO_XVMC  =  UInt32(3)
const AV_CODEC_ID_H261  =  UInt32(4)
const AV_CODEC_ID_H263  =  UInt32(5)
const AV_CODEC_ID_RV10  =  UInt32(6)
const AV_CODEC_ID_RV20  =  UInt32(7)
const AV_CODEC_ID_MJPEG  =  UInt32(8)
const AV_CODEC_ID_MJPEGB  =  UInt32(9)
const AV_CODEC_ID_LJPEG  =  UInt32(10)
const AV_CODEC_ID_SP5X  =  UInt32(11)
const AV_CODEC_ID_JPEGLS  =  UInt32(12)
const AV_CODEC_ID_MPEG4  =  UInt32(13)
const AV_CODEC_ID_RAWVIDEO  =  UInt32(14)
const AV_CODEC_ID_MSMPEG4V1  =  UInt32(15)
const AV_CODEC_ID_MSMPEG4V2  =  UInt32(16)
const AV_CODEC_ID_MSMPEG4V3  =  UInt32(17)
const AV_CODEC_ID_WMV1  =  UInt32(18)
const AV_CODEC_ID_WMV2  =  UInt32(19)
const AV_CODEC_ID_H263P  =  UInt32(20)
const AV_CODEC_ID_H263I  =  UInt32(21)
const AV_CODEC_ID_FLV1  =  UInt32(22)
const AV_CODEC_ID_SVQ1  =  UInt32(23)
const AV_CODEC_ID_SVQ3  =  UInt32(24)
const AV_CODEC_ID_DVVIDEO  =  UInt32(25)
const AV_CODEC_ID_HUFFYUV  =  UInt32(26)
const AV_CODEC_ID_CYUV  =  UInt32(27)
const AV_CODEC_ID_H264  =  UInt32(28)
const AV_CODEC_ID_INDEO3  =  UInt32(29)
const AV_CODEC_ID_VP3  =  UInt32(30)
const AV_CODEC_ID_THEORA  =  UInt32(31)
const AV_CODEC_ID_ASV1  =  UInt32(32)
const AV_CODEC_ID_ASV2  =  UInt32(33)
const AV_CODEC_ID_FFV1  =  UInt32(34)
const AV_CODEC_ID_4XM  =  UInt32(35)
const AV_CODEC_ID_VCR1  =  UInt32(36)
const AV_CODEC_ID_CLJR  =  UInt32(37)
const AV_CODEC_ID_MDEC  =  UInt32(38)
const AV_CODEC_ID_ROQ  =  UInt32(39)
const AV_CODEC_ID_INTERPLAY_VIDEO  =  UInt32(40)
const AV_CODEC_ID_XAN_WC3  =  UInt32(41)
const AV_CODEC_ID_XAN_WC4  =  UInt32(42)
const AV_CODEC_ID_RPZA  =  UInt32(43)
const AV_CODEC_ID_CINEPAK  =  UInt32(44)
const AV_CODEC_ID_WS_VQA  =  UInt32(45)
const AV_CODEC_ID_MSRLE  =  UInt32(46)
const AV_CODEC_ID_MSVIDEO1  =  UInt32(47)
const AV_CODEC_ID_IDCIN  =  UInt32(48)
const AV_CODEC_ID_8BPS  =  UInt32(49)
const AV_CODEC_ID_SMC  =  UInt32(50)
const AV_CODEC_ID_FLIC  =  UInt32(51)
const AV_CODEC_ID_TRUEMOTION1  =  UInt32(52)
const AV_CODEC_ID_VMDVIDEO  =  UInt32(53)
const AV_CODEC_ID_MSZH  =  UInt32(54)
const AV_CODEC_ID_ZLIB  =  UInt32(55)
const AV_CODEC_ID_QTRLE  =  UInt32(56)
const AV_CODEC_ID_TSCC  =  UInt32(57)
const AV_CODEC_ID_ULTI  =  UInt32(58)
const AV_CODEC_ID_QDRAW  =  UInt32(59)
const AV_CODEC_ID_VIXL  =  UInt32(60)
const AV_CODEC_ID_QPEG  =  UInt32(61)
const AV_CODEC_ID_PNG  =  UInt32(62)
const AV_CODEC_ID_PPM  =  UInt32(63)
const AV_CODEC_ID_PBM  =  UInt32(64)
const AV_CODEC_ID_PGM  =  UInt32(65)
const AV_CODEC_ID_PGMYUV  =  UInt32(66)
const AV_CODEC_ID_PAM  =  UInt32(67)
const AV_CODEC_ID_FFVHUFF  =  UInt32(68)
const AV_CODEC_ID_RV30  =  UInt32(69)
const AV_CODEC_ID_RV40  =  UInt32(70)
const AV_CODEC_ID_VC1  =  UInt32(71)
const AV_CODEC_ID_WMV3  =  UInt32(72)
const AV_CODEC_ID_LOCO  =  UInt32(73)
const AV_CODEC_ID_WNV1  =  UInt32(74)
const AV_CODEC_ID_AASC  =  UInt32(75)
const AV_CODEC_ID_INDEO2  =  UInt32(76)
const AV_CODEC_ID_FRAPS  =  UInt32(77)
const AV_CODEC_ID_TRUEMOTION2  =  UInt32(78)
const AV_CODEC_ID_BMP  =  UInt32(79)
const AV_CODEC_ID_CSCD  =  UInt32(80)
const AV_CODEC_ID_MMVIDEO  =  UInt32(81)
const AV_CODEC_ID_ZMBV  =  UInt32(82)
const AV_CODEC_ID_AVS  =  UInt32(83)
const AV_CODEC_ID_SMACKVIDEO  =  UInt32(84)
const AV_CODEC_ID_NUV  =  UInt32(85)
const AV_CODEC_ID_KMVC  =  UInt32(86)
const AV_CODEC_ID_FLASHSV  =  UInt32(87)
const AV_CODEC_ID_CAVS  =  UInt32(88)
const AV_CODEC_ID_JPEG2000  =  UInt32(89)
const AV_CODEC_ID_VMNC  =  UInt32(90)
const AV_CODEC_ID_VP5  =  UInt32(91)
const AV_CODEC_ID_VP6  =  UInt32(92)
const AV_CODEC_ID_VP6F  =  UInt32(93)
const AV_CODEC_ID_TARGA  =  UInt32(94)
const AV_CODEC_ID_DSICINVIDEO  =  UInt32(95)
const AV_CODEC_ID_TIERTEXSEQVIDEO  =  UInt32(96)
const AV_CODEC_ID_TIFF  =  UInt32(97)
const AV_CODEC_ID_GIF  =  UInt32(98)
const AV_CODEC_ID_DXA  =  UInt32(99)
const AV_CODEC_ID_DNXHD  =  UInt32(100)
const AV_CODEC_ID_THP  =  UInt32(101)
const AV_CODEC_ID_SGI  =  UInt32(102)
const AV_CODEC_ID_C93  =  UInt32(103)
const AV_CODEC_ID_BETHSOFTVID  =  UInt32(104)
const AV_CODEC_ID_PTX  =  UInt32(105)
const AV_CODEC_ID_TXD  =  UInt32(106)
const AV_CODEC_ID_VP6A  =  UInt32(107)
const AV_CODEC_ID_AMV  =  UInt32(108)
const AV_CODEC_ID_VB  =  UInt32(109)
const AV_CODEC_ID_PCX  =  UInt32(110)
const AV_CODEC_ID_SUNRAST  =  UInt32(111)
const AV_CODEC_ID_INDEO4  =  UInt32(112)
const AV_CODEC_ID_INDEO5  =  UInt32(113)
const AV_CODEC_ID_MIMIC  =  UInt32(114)
const AV_CODEC_ID_RL2  =  UInt32(115)
const AV_CODEC_ID_ESCAPE124  =  UInt32(116)
const AV_CODEC_ID_DIRAC  =  UInt32(117)
const AV_CODEC_ID_BFI  =  UInt32(118)
const AV_CODEC_ID_CMV  =  UInt32(119)
const AV_CODEC_ID_MOTIONPIXELS  =  UInt32(120)
const AV_CODEC_ID_TGV  =  UInt32(121)
const AV_CODEC_ID_TGQ  =  UInt32(122)
const AV_CODEC_ID_TQI  =  UInt32(123)
const AV_CODEC_ID_AURA  =  UInt32(124)
const AV_CODEC_ID_AURA2  =  UInt32(125)
const AV_CODEC_ID_V210X  =  UInt32(126)
const AV_CODEC_ID_TMV  =  UInt32(127)
const AV_CODEC_ID_V210  =  UInt32(128)
const AV_CODEC_ID_DPX  =  UInt32(129)
const AV_CODEC_ID_MAD  =  UInt32(130)
const AV_CODEC_ID_FRWU  =  UInt32(131)
const AV_CODEC_ID_FLASHSV2  =  UInt32(132)
const AV_CODEC_ID_CDGRAPHICS  =  UInt32(133)
const AV_CODEC_ID_R210  =  UInt32(134)
const AV_CODEC_ID_ANM  =  UInt32(135)
const AV_CODEC_ID_BINKVIDEO  =  UInt32(136)
const AV_CODEC_ID_IFF_ILBM  =  UInt32(137)
const AV_CODEC_ID_IFF_BYTERUN1  =  UInt32(138)
const AV_CODEC_ID_KGV1  =  UInt32(139)
const AV_CODEC_ID_YOP  =  UInt32(140)
const AV_CODEC_ID_VP8  =  UInt32(141)
const AV_CODEC_ID_PICTOR  =  UInt32(142)
const AV_CODEC_ID_ANSI  =  UInt32(143)
const AV_CODEC_ID_A64_MULTI  =  UInt32(144)
const AV_CODEC_ID_A64_MULTI5  =  UInt32(145)
const AV_CODEC_ID_R10K  =  UInt32(146)
const AV_CODEC_ID_MXPEG  =  UInt32(147)
const AV_CODEC_ID_LAGARITH  =  UInt32(148)
const AV_CODEC_ID_PRORES  =  UInt32(149)
const AV_CODEC_ID_JV  =  UInt32(150)
const AV_CODEC_ID_DFA  =  UInt32(151)
const AV_CODEC_ID_WMV3IMAGE  =  UInt32(152)
const AV_CODEC_ID_VC1IMAGE  =  UInt32(153)
const AV_CODEC_ID_UTVIDEO  =  UInt32(154)
const AV_CODEC_ID_BMV_VIDEO  =  UInt32(155)
const AV_CODEC_ID_VBLE  =  UInt32(156)
const AV_CODEC_ID_DXTORY  =  UInt32(157)
const AV_CODEC_ID_V410  =  UInt32(158)
const AV_CODEC_ID_XWD  =  UInt32(159)
const AV_CODEC_ID_CDXL  =  UInt32(160)
const AV_CODEC_ID_XBM  =  UInt32(161)
const AV_CODEC_ID_ZEROCODEC  =  UInt32(162)
const AV_CODEC_ID_MSS1  =  UInt32(163)
const AV_CODEC_ID_MSA1  =  UInt32(164)
const AV_CODEC_ID_TSCC2  =  UInt32(165)
const AV_CODEC_ID_MTS2  =  UInt32(166)
const AV_CODEC_ID_CLLC  =  UInt32(167)
const AV_CODEC_ID_MSS2  =  UInt32(168)
const AV_CODEC_ID_VP9  =  UInt32(169)
const AV_CODEC_ID_AIC  =  UInt32(170)
const AV_CODEC_ID_ESCAPE130_DEPRECATED  =  UInt32(171)
const AV_CODEC_ID_G2M_DEPRECATED  =  UInt32(172)
const AV_CODEC_ID_WEBP_DEPRECATED  =  UInt32(173)
const AV_CODEC_ID_HNM4_VIDEO  =  UInt32(174)
const AV_CODEC_ID_HEVC_DEPRECATED  =  UInt32(175)
const AV_CODEC_ID_FIC  =  UInt32(176)
const AV_CODEC_ID_ALIAS_PIX  =  UInt32(177)
const AV_CODEC_ID_BRENDER_PIX_DEPRECATED  =  UInt32(178)
const AV_CODEC_ID_PAF_VIDEO_DEPRECATED  =  UInt32(179)
const AV_CODEC_ID_EXR_DEPRECATED  =  UInt32(180)
const AV_CODEC_ID_VP7_DEPRECATED  =  UInt32(181)
const AV_CODEC_ID_SANM_DEPRECATED  =  UInt32(182)
const AV_CODEC_ID_SGIRLE_DEPRECATED  =  UInt32(183)
const AV_CODEC_ID_MVC1_DEPRECATED  =  UInt32(184)
const AV_CODEC_ID_MVC2_DEPRECATED  =  UInt32(185)
const AV_CODEC_ID_BRENDER_PIX  =  UInt32(1112557912)
const AV_CODEC_ID_Y41P  =  UInt32(1496592720)
const AV_CODEC_ID_ESCAPE130  =  UInt32(1160852272)
const AV_CODEC_ID_EXR  =  UInt32(809850962)
const AV_CODEC_ID_AVRP  =  UInt32(1096176208)
const AV_CODEC_ID_012V  =  UInt32(808530518)
const AV_CODEC_ID_G2M  =  UInt32(4665933)
const AV_CODEC_ID_AVUI  =  UInt32(1096176969)
const AV_CODEC_ID_AYUV  =  UInt32(1096373590)
const AV_CODEC_ID_TARGA_Y216  =  UInt32(1412575542)
const AV_CODEC_ID_V308  =  UInt32(1446195256)
const AV_CODEC_ID_V408  =  UInt32(1446260792)
const AV_CODEC_ID_YUV4  =  UInt32(1498764852)
const AV_CODEC_ID_SANM  =  UInt32(1396788813)
const AV_CODEC_ID_PAF_VIDEO  =  UInt32(1346455126)
const AV_CODEC_ID_AVRN  =  UInt32(1096176238)
const AV_CODEC_ID_CPIA  =  UInt32(1129335105)
const AV_CODEC_ID_XFACE  =  UInt32(1480999235)
const AV_CODEC_ID_SGIRLE  =  UInt32(1397180754)
const AV_CODEC_ID_MVC1  =  UInt32(1297498929)
const AV_CODEC_ID_MVC2  =  UInt32(1297498930)
const AV_CODEC_ID_SNOW  =  UInt32(1397641047)
const AV_CODEC_ID_WEBP  =  UInt32(1464156752)
const AV_CODEC_ID_SMVJPEG  =  UInt32(1397577290)
const AV_CODEC_ID_HEVC  =  UInt32(1211250229)
const AV_CODEC_ID_VP7  =  UInt32(1448097584)
const AV_CODEC_ID_FIRST_AUDIO  =  UInt32(65536)
const AV_CODEC_ID_PCM_S16LE  =  UInt32(65536)
const AV_CODEC_ID_PCM_S16BE  =  UInt32(65537)
const AV_CODEC_ID_PCM_U16LE  =  UInt32(65538)
const AV_CODEC_ID_PCM_U16BE  =  UInt32(65539)
const AV_CODEC_ID_PCM_S8  =  UInt32(65540)
const AV_CODEC_ID_PCM_U8  =  UInt32(65541)
const AV_CODEC_ID_PCM_MULAW  =  UInt32(65542)
const AV_CODEC_ID_PCM_ALAW  =  UInt32(65543)
const AV_CODEC_ID_PCM_S32LE  =  UInt32(65544)
const AV_CODEC_ID_PCM_S32BE  =  UInt32(65545)
const AV_CODEC_ID_PCM_U32LE  =  UInt32(65546)
const AV_CODEC_ID_PCM_U32BE  =  UInt32(65547)
const AV_CODEC_ID_PCM_S24LE  =  UInt32(65548)
const AV_CODEC_ID_PCM_S24BE  =  UInt32(65549)
const AV_CODEC_ID_PCM_U24LE  =  UInt32(65550)
const AV_CODEC_ID_PCM_U24BE  =  UInt32(65551)
const AV_CODEC_ID_PCM_S24DAUD  =  UInt32(65552)
const AV_CODEC_ID_PCM_ZORK  =  UInt32(65553)
const AV_CODEC_ID_PCM_S16LE_PLANAR  =  UInt32(65554)
const AV_CODEC_ID_PCM_DVD  =  UInt32(65555)
const AV_CODEC_ID_PCM_F32BE  =  UInt32(65556)
const AV_CODEC_ID_PCM_F32LE  =  UInt32(65557)
const AV_CODEC_ID_PCM_F64BE  =  UInt32(65558)
const AV_CODEC_ID_PCM_F64LE  =  UInt32(65559)
const AV_CODEC_ID_PCM_BLURAY  =  UInt32(65560)
const AV_CODEC_ID_PCM_LXF  =  UInt32(65561)
const AV_CODEC_ID_S302M  =  UInt32(65562)
const AV_CODEC_ID_PCM_S8_PLANAR  =  UInt32(65563)
const AV_CODEC_ID_PCM_S24LE_PLANAR_DEPRECATED  =  UInt32(65564)
const AV_CODEC_ID_PCM_S32LE_PLANAR_DEPRECATED  =  UInt32(65565)
const AV_CODEC_ID_PCM_S24LE_PLANAR  =  UInt32(407917392)
const AV_CODEC_ID_PCM_S32LE_PLANAR  =  UInt32(542135120)
const AV_CODEC_ID_PCM_S16BE_PLANAR  =  UInt32(1347637264)
const AV_CODEC_ID_ADPCM_IMA_QT  =  UInt32(69632)
const AV_CODEC_ID_ADPCM_IMA_WAV  =  UInt32(69633)
const AV_CODEC_ID_ADPCM_IMA_DK3  =  UInt32(69634)
const AV_CODEC_ID_ADPCM_IMA_DK4  =  UInt32(69635)
const AV_CODEC_ID_ADPCM_IMA_WS  =  UInt32(69636)
const AV_CODEC_ID_ADPCM_IMA_SMJPEG  =  UInt32(69637)
const AV_CODEC_ID_ADPCM_MS  =  UInt32(69638)
const AV_CODEC_ID_ADPCM_4XM  =  UInt32(69639)
const AV_CODEC_ID_ADPCM_XA  =  UInt32(69640)
const AV_CODEC_ID_ADPCM_ADX  =  UInt32(69641)
const AV_CODEC_ID_ADPCM_EA  =  UInt32(69642)
const AV_CODEC_ID_ADPCM_G726  =  UInt32(69643)
const AV_CODEC_ID_ADPCM_CT  =  UInt32(69644)
const AV_CODEC_ID_ADPCM_SWF  =  UInt32(69645)
const AV_CODEC_ID_ADPCM_YAMAHA  =  UInt32(69646)
const AV_CODEC_ID_ADPCM_SBPRO_4  =  UInt32(69647)
const AV_CODEC_ID_ADPCM_SBPRO_3  =  UInt32(69648)
const AV_CODEC_ID_ADPCM_SBPRO_2  =  UInt32(69649)
const AV_CODEC_ID_ADPCM_THP  =  UInt32(69650)
const AV_CODEC_ID_ADPCM_IMA_AMV  =  UInt32(69651)
const AV_CODEC_ID_ADPCM_EA_R1  =  UInt32(69652)
const AV_CODEC_ID_ADPCM_EA_R3  =  UInt32(69653)
const AV_CODEC_ID_ADPCM_EA_R2  =  UInt32(69654)
const AV_CODEC_ID_ADPCM_IMA_EA_SEAD  =  UInt32(69655)
const AV_CODEC_ID_ADPCM_IMA_EA_EACS  =  UInt32(69656)
const AV_CODEC_ID_ADPCM_EA_XAS  =  UInt32(69657)
const AV_CODEC_ID_ADPCM_EA_MAXIS_XA  =  UInt32(69658)
const AV_CODEC_ID_ADPCM_IMA_ISS  =  UInt32(69659)
const AV_CODEC_ID_ADPCM_G722  =  UInt32(69660)
const AV_CODEC_ID_ADPCM_IMA_APC  =  UInt32(69661)
const AV_CODEC_ID_ADPCM_VIMA_DEPRECATED  =  UInt32(69662)
const AV_CODEC_ID_ADPCM_VIMA  =  UInt32(1447644481)
const AV_CODEC_ID_VIMA  =  UInt32(1447644481)
const AV_CODEC_ID_ADPCM_AFC  =  UInt32(1095123744)
const AV_CODEC_ID_ADPCM_IMA_OKI  =  UInt32(1330333984)
const AV_CODEC_ID_ADPCM_DTK  =  UInt32(1146374944)
const AV_CODEC_ID_ADPCM_IMA_RAD  =  UInt32(1380008992)
const AV_CODEC_ID_ADPCM_G726LE  =  UInt32(909260615)
const AV_CODEC_ID_AMR_NB  =  UInt32(73728)
const AV_CODEC_ID_AMR_WB  =  UInt32(73729)
const AV_CODEC_ID_RA_144  =  UInt32(77824)
const AV_CODEC_ID_RA_288  =  UInt32(77825)
const AV_CODEC_ID_ROQ_DPCM  =  UInt32(81920)
const AV_CODEC_ID_INTERPLAY_DPCM  =  UInt32(81921)
const AV_CODEC_ID_XAN_DPCM  =  UInt32(81922)
const AV_CODEC_ID_SOL_DPCM  =  UInt32(81923)
const AV_CODEC_ID_MP2  =  UInt32(86016)
const AV_CODEC_ID_MP3  =  UInt32(86017)
const AV_CODEC_ID_AAC  =  UInt32(86018)
const AV_CODEC_ID_AC3  =  UInt32(86019)
const AV_CODEC_ID_DTS  =  UInt32(86020)
const AV_CODEC_ID_VORBIS  =  UInt32(86021)
const AV_CODEC_ID_DVAUDIO  =  UInt32(86022)
const AV_CODEC_ID_WMAV1  =  UInt32(86023)
const AV_CODEC_ID_WMAV2  =  UInt32(86024)
const AV_CODEC_ID_MACE3  =  UInt32(86025)
const AV_CODEC_ID_MACE6  =  UInt32(86026)
const AV_CODEC_ID_VMDAUDIO  =  UInt32(86027)
const AV_CODEC_ID_FLAC  =  UInt32(86028)
const AV_CODEC_ID_MP3ADU  =  UInt32(86029)
const AV_CODEC_ID_MP3ON4  =  UInt32(86030)
const AV_CODEC_ID_SHORTEN  =  UInt32(86031)
const AV_CODEC_ID_ALAC  =  UInt32(86032)
const AV_CODEC_ID_WESTWOOD_SND1  =  UInt32(86033)
const AV_CODEC_ID_GSM  =  UInt32(86034)
const AV_CODEC_ID_QDM2  =  UInt32(86035)
const AV_CODEC_ID_COOK  =  UInt32(86036)
const AV_CODEC_ID_TRUESPEECH  =  UInt32(86037)
const AV_CODEC_ID_TTA  =  UInt32(86038)
const AV_CODEC_ID_SMACKAUDIO  =  UInt32(86039)
const AV_CODEC_ID_QCELP  =  UInt32(86040)
const AV_CODEC_ID_WAVPACK  =  UInt32(86041)
const AV_CODEC_ID_DSICINAUDIO  =  UInt32(86042)
const AV_CODEC_ID_IMC  =  UInt32(86043)
const AV_CODEC_ID_MUSEPACK7  =  UInt32(86044)
const AV_CODEC_ID_MLP  =  UInt32(86045)
const AV_CODEC_ID_GSM_MS  =  UInt32(86046)
const AV_CODEC_ID_ATRAC3  =  UInt32(86047)
const AV_CODEC_ID_VOXWARE  =  UInt32(86048)
const AV_CODEC_ID_APE  =  UInt32(86049)
const AV_CODEC_ID_NELLYMOSER  =  UInt32(86050)
const AV_CODEC_ID_MUSEPACK8  =  UInt32(86051)
const AV_CODEC_ID_SPEEX  =  UInt32(86052)
const AV_CODEC_ID_WMAVOICE  =  UInt32(86053)
const AV_CODEC_ID_WMAPRO  =  UInt32(86054)
const AV_CODEC_ID_WMALOSSLESS  =  UInt32(86055)
const AV_CODEC_ID_ATRAC3P  =  UInt32(86056)
const AV_CODEC_ID_EAC3  =  UInt32(86057)
const AV_CODEC_ID_SIPR  =  UInt32(86058)
const AV_CODEC_ID_MP1  =  UInt32(86059)
const AV_CODEC_ID_TWINVQ  =  UInt32(86060)
const AV_CODEC_ID_TRUEHD  =  UInt32(86061)
const AV_CODEC_ID_MP4ALS  =  UInt32(86062)
const AV_CODEC_ID_ATRAC1  =  UInt32(86063)
const AV_CODEC_ID_BINKAUDIO_RDFT  =  UInt32(86064)
const AV_CODEC_ID_BINKAUDIO_DCT  =  UInt32(86065)
const AV_CODEC_ID_AAC_LATM  =  UInt32(86066)
const AV_CODEC_ID_QDMC  =  UInt32(86067)
const AV_CODEC_ID_CELT  =  UInt32(86068)
const AV_CODEC_ID_G723_1  =  UInt32(86069)
const AV_CODEC_ID_G729  =  UInt32(86070)
const AV_CODEC_ID_8SVX_EXP  =  UInt32(86071)
const AV_CODEC_ID_8SVX_FIB  =  UInt32(86072)
const AV_CODEC_ID_BMV_AUDIO  =  UInt32(86073)
const AV_CODEC_ID_RALF  =  UInt32(86074)
const AV_CODEC_ID_IAC  =  UInt32(86075)
const AV_CODEC_ID_ILBC  =  UInt32(86076)
const AV_CODEC_ID_OPUS_DEPRECATED  =  UInt32(86077)
const AV_CODEC_ID_COMFORT_NOISE  =  UInt32(86078)
const AV_CODEC_ID_TAK_DEPRECATED  =  UInt32(86079)
const AV_CODEC_ID_METASOUND  =  UInt32(86080)
const AV_CODEC_ID_PAF_AUDIO_DEPRECATED  =  UInt32(86081)
const AV_CODEC_ID_ON2AVC  =  UInt32(86082)
const AV_CODEC_ID_FFWAVESYNTH  =  UInt32(1179014995)
const AV_CODEC_ID_SONIC  =  UInt32(1397706307)
const AV_CODEC_ID_SONIC_LS  =  UInt32(1397706316)
const AV_CODEC_ID_PAF_AUDIO  =  UInt32(1346455105)
const AV_CODEC_ID_OPUS  =  UInt32(1330664787)
const AV_CODEC_ID_TAK  =  UInt32(1950507339)
const AV_CODEC_ID_EVRC  =  UInt32(1936029283)
const AV_CODEC_ID_SMV  =  UInt32(1936944502)
const AV_CODEC_ID_DSD_LSBF  =  UInt32(1146307660)
const AV_CODEC_ID_DSD_MSBF  =  UInt32(1146307661)
const AV_CODEC_ID_DSD_LSBF_PLANAR  =  UInt32(1146307633)
const AV_CODEC_ID_DSD_MSBF_PLANAR  =  UInt32(1146307640)
const AV_CODEC_ID_FIRST_SUBTITLE  =  UInt32(94208)
const AV_CODEC_ID_DVD_SUBTITLE  =  UInt32(94208)
const AV_CODEC_ID_DVB_SUBTITLE  =  UInt32(94209)
const AV_CODEC_ID_TEXT  =  UInt32(94210)
const AV_CODEC_ID_XSUB  =  UInt32(94211)
const AV_CODEC_ID_SSA  =  UInt32(94212)
const AV_CODEC_ID_MOV_TEXT  =  UInt32(94213)
const AV_CODEC_ID_HDMV_PGS_SUBTITLE  =  UInt32(94214)
const AV_CODEC_ID_DVB_TELETEXT  =  UInt32(94215)
const AV_CODEC_ID_SRT  =  UInt32(94216)
const AV_CODEC_ID_MICRODVD  =  UInt32(1833195076)
const AV_CODEC_ID_EIA_608  =  UInt32(1664495672)
const AV_CODEC_ID_JACOSUB  =  UInt32(1246975298)
const AV_CODEC_ID_SAMI  =  UInt32(1396788553)
const AV_CODEC_ID_REALTEXT  =  UInt32(1381259348)
const AV_CODEC_ID_SUBVIEWER1  =  UInt32(1398953521)
const AV_CODEC_ID_SUBVIEWER  =  UInt32(1400201814)
const AV_CODEC_ID_SUBRIP  =  UInt32(1397909872)
const AV_CODEC_ID_WEBVTT  =  UInt32(1465275476)
const AV_CODEC_ID_MPL2  =  UInt32(1297108018)
const AV_CODEC_ID_VPLAYER  =  UInt32(1448111218)
const AV_CODEC_ID_PJS  =  UInt32(1349012051)
const AV_CODEC_ID_ASS  =  UInt32(1095979808)
const AV_CODEC_ID_FIRST_UNKNOWN  =  UInt32(98304)
const AV_CODEC_ID_TTF  =  UInt32(98304)
const AV_CODEC_ID_BINTEXT  =  UInt32(1112823892)
const AV_CODEC_ID_XBIN  =  UInt32(1480739150)
const AV_CODEC_ID_IDF  =  UInt32(4801606)
const AV_CODEC_ID_OTF  =  UInt32(5198918)
const AV_CODEC_ID_SMPTE_KLV  =  UInt32(1263294017)
const AV_CODEC_ID_DVD_NAV  =  UInt32(1145979222)
const AV_CODEC_ID_TIMED_ID3  =  UInt32(1414087731)
const AV_CODEC_ID_BIN_DATA  =  UInt32(1145132097)
const AV_CODEC_ID_PROBE  =  UInt32(102400)
const AV_CODEC_ID_MPEG2TS  =  UInt32(131072)
const AV_CODEC_ID_MPEG4SYSTEMS  =  UInt32(131073)
const AV_CODEC_ID_FFMETADATA  =  UInt32(135168)
const CODEC_ID_NONE  =  UInt32(0)
const CODEC_ID_MPEG1VIDEO  =  UInt32(1)
const CODEC_ID_MPEG2VIDEO  =  UInt32(2)
const CODEC_ID_MPEG2VIDEO_XVMC  =  UInt32(3)
const CODEC_ID_H261  =  UInt32(4)
const CODEC_ID_H263  =  UInt32(5)
const CODEC_ID_RV10  =  UInt32(6)
const CODEC_ID_RV20  =  UInt32(7)
const CODEC_ID_MJPEG  =  UInt32(8)
const CODEC_ID_MJPEGB  =  UInt32(9)
const CODEC_ID_LJPEG  =  UInt32(10)
const CODEC_ID_SP5X  =  UInt32(11)
const CODEC_ID_JPEGLS  =  UInt32(12)
const CODEC_ID_MPEG4  =  UInt32(13)
const CODEC_ID_RAWVIDEO  =  UInt32(14)
const CODEC_ID_MSMPEG4V1  =  UInt32(15)
const CODEC_ID_MSMPEG4V2  =  UInt32(16)
const CODEC_ID_MSMPEG4V3  =  UInt32(17)
const CODEC_ID_WMV1  =  UInt32(18)
const CODEC_ID_WMV2  =  UInt32(19)
const CODEC_ID_H263P  =  UInt32(20)
const CODEC_ID_H263I  =  UInt32(21)
const CODEC_ID_FLV1  =  UInt32(22)
const CODEC_ID_SVQ1  =  UInt32(23)
const CODEC_ID_SVQ3  =  UInt32(24)
const CODEC_ID_DVVIDEO  =  UInt32(25)
const CODEC_ID_HUFFYUV  =  UInt32(26)
const CODEC_ID_CYUV  =  UInt32(27)
const CODEC_ID_H264  =  UInt32(28)
const CODEC_ID_INDEO3  =  UInt32(29)
const CODEC_ID_VP3  =  UInt32(30)
const CODEC_ID_THEORA  =  UInt32(31)
const CODEC_ID_ASV1  =  UInt32(32)
const CODEC_ID_ASV2  =  UInt32(33)
const CODEC_ID_FFV1  =  UInt32(34)
const CODEC_ID_4XM  =  UInt32(35)
const CODEC_ID_VCR1  =  UInt32(36)
const CODEC_ID_CLJR  =  UInt32(37)
const CODEC_ID_MDEC  =  UInt32(38)
const CODEC_ID_ROQ  =  UInt32(39)
const CODEC_ID_INTERPLAY_VIDEO  =  UInt32(40)
const CODEC_ID_XAN_WC3  =  UInt32(41)
const CODEC_ID_XAN_WC4  =  UInt32(42)
const CODEC_ID_RPZA  =  UInt32(43)
const CODEC_ID_CINEPAK  =  UInt32(44)
const CODEC_ID_WS_VQA  =  UInt32(45)
const CODEC_ID_MSRLE  =  UInt32(46)
const CODEC_ID_MSVIDEO1  =  UInt32(47)
const CODEC_ID_IDCIN  =  UInt32(48)
const CODEC_ID_8BPS  =  UInt32(49)
const CODEC_ID_SMC  =  UInt32(50)
const CODEC_ID_FLIC  =  UInt32(51)
const CODEC_ID_TRUEMOTION1  =  UInt32(52)
const CODEC_ID_VMDVIDEO  =  UInt32(53)
const CODEC_ID_MSZH  =  UInt32(54)
const CODEC_ID_ZLIB  =  UInt32(55)
const CODEC_ID_QTRLE  =  UInt32(56)
const CODEC_ID_TSCC  =  UInt32(57)
const CODEC_ID_ULTI  =  UInt32(58)
const CODEC_ID_QDRAW  =  UInt32(59)
const CODEC_ID_VIXL  =  UInt32(60)
const CODEC_ID_QPEG  =  UInt32(61)
const CODEC_ID_PNG  =  UInt32(62)
const CODEC_ID_PPM  =  UInt32(63)
const CODEC_ID_PBM  =  UInt32(64)
const CODEC_ID_PGM  =  UInt32(65)
const CODEC_ID_PGMYUV  =  UInt32(66)
const CODEC_ID_PAM  =  UInt32(67)
const CODEC_ID_FFVHUFF  =  UInt32(68)
const CODEC_ID_RV30  =  UInt32(69)
const CODEC_ID_RV40  =  UInt32(70)
const CODEC_ID_VC1  =  UInt32(71)
const CODEC_ID_WMV3  =  UInt32(72)
const CODEC_ID_LOCO  =  UInt32(73)
const CODEC_ID_WNV1  =  UInt32(74)
const CODEC_ID_AASC  =  UInt32(75)
const CODEC_ID_INDEO2  =  UInt32(76)
const CODEC_ID_FRAPS  =  UInt32(77)
const CODEC_ID_TRUEMOTION2  =  UInt32(78)
const CODEC_ID_BMP  =  UInt32(79)
const CODEC_ID_CSCD  =  UInt32(80)
const CODEC_ID_MMVIDEO  =  UInt32(81)
const CODEC_ID_ZMBV  =  UInt32(82)
const CODEC_ID_AVS  =  UInt32(83)
const CODEC_ID_SMACKVIDEO  =  UInt32(84)
const CODEC_ID_NUV  =  UInt32(85)
const CODEC_ID_KMVC  =  UInt32(86)
const CODEC_ID_FLASHSV  =  UInt32(87)
const CODEC_ID_CAVS  =  UInt32(88)
const CODEC_ID_JPEG2000  =  UInt32(89)
const CODEC_ID_VMNC  =  UInt32(90)
const CODEC_ID_VP5  =  UInt32(91)
const CODEC_ID_VP6  =  UInt32(92)
const CODEC_ID_VP6F  =  UInt32(93)
const CODEC_ID_TARGA  =  UInt32(94)
const CODEC_ID_DSICINVIDEO  =  UInt32(95)
const CODEC_ID_TIERTEXSEQVIDEO  =  UInt32(96)
const CODEC_ID_TIFF  =  UInt32(97)
const CODEC_ID_GIF  =  UInt32(98)
const CODEC_ID_DXA  =  UInt32(99)
const CODEC_ID_DNXHD  =  UInt32(100)
const CODEC_ID_THP  =  UInt32(101)
const CODEC_ID_SGI  =  UInt32(102)
const CODEC_ID_C93  =  UInt32(103)
const CODEC_ID_BETHSOFTVID  =  UInt32(104)
const CODEC_ID_PTX  =  UInt32(105)
const CODEC_ID_TXD  =  UInt32(106)
const CODEC_ID_VP6A  =  UInt32(107)
const CODEC_ID_AMV  =  UInt32(108)
const CODEC_ID_VB  =  UInt32(109)
const CODEC_ID_PCX  =  UInt32(110)
const CODEC_ID_SUNRAST  =  UInt32(111)
const CODEC_ID_INDEO4  =  UInt32(112)
const CODEC_ID_INDEO5  =  UInt32(113)
const CODEC_ID_MIMIC  =  UInt32(114)
const CODEC_ID_RL2  =  UInt32(115)
const CODEC_ID_ESCAPE124  =  UInt32(116)
const CODEC_ID_DIRAC  =  UInt32(117)
const CODEC_ID_BFI  =  UInt32(118)
const CODEC_ID_CMV  =  UInt32(119)
const CODEC_ID_MOTIONPIXELS  =  UInt32(120)
const CODEC_ID_TGV  =  UInt32(121)
const CODEC_ID_TGQ  =  UInt32(122)
const CODEC_ID_TQI  =  UInt32(123)
const CODEC_ID_AURA  =  UInt32(124)
const CODEC_ID_AURA2  =  UInt32(125)
const CODEC_ID_V210X  =  UInt32(126)
const CODEC_ID_TMV  =  UInt32(127)
const CODEC_ID_V210  =  UInt32(128)
const CODEC_ID_DPX  =  UInt32(129)
const CODEC_ID_MAD  =  UInt32(130)
const CODEC_ID_FRWU  =  UInt32(131)
const CODEC_ID_FLASHSV2  =  UInt32(132)
const CODEC_ID_CDGRAPHICS  =  UInt32(133)
const CODEC_ID_R210  =  UInt32(134)
const CODEC_ID_ANM  =  UInt32(135)
const CODEC_ID_BINKVIDEO  =  UInt32(136)
const CODEC_ID_IFF_ILBM  =  UInt32(137)
const CODEC_ID_IFF_BYTERUN1  =  UInt32(138)
const CODEC_ID_KGV1  =  UInt32(139)
const CODEC_ID_YOP  =  UInt32(140)
const CODEC_ID_VP8  =  UInt32(141)
const CODEC_ID_PICTOR  =  UInt32(142)
const CODEC_ID_ANSI  =  UInt32(143)
const CODEC_ID_A64_MULTI  =  UInt32(144)
const CODEC_ID_A64_MULTI5  =  UInt32(145)
const CODEC_ID_R10K  =  UInt32(146)
const CODEC_ID_MXPEG  =  UInt32(147)
const CODEC_ID_LAGARITH  =  UInt32(148)
const CODEC_ID_PRORES  =  UInt32(149)
const CODEC_ID_JV  =  UInt32(150)
const CODEC_ID_DFA  =  UInt32(151)
const CODEC_ID_WMV3IMAGE  =  UInt32(152)
const CODEC_ID_VC1IMAGE  =  UInt32(153)
const CODEC_ID_UTVIDEO  =  UInt32(154)
const CODEC_ID_BMV_VIDEO  =  UInt32(155)
const CODEC_ID_VBLE  =  UInt32(156)
const CODEC_ID_DXTORY  =  UInt32(157)
const CODEC_ID_V410  =  UInt32(158)
const CODEC_ID_XWD  =  UInt32(159)
const CODEC_ID_CDXL  =  UInt32(160)
const CODEC_ID_XBM  =  UInt32(161)
const CODEC_ID_ZEROCODEC  =  UInt32(162)
const CODEC_ID_MSS1  =  UInt32(163)
const CODEC_ID_MSA1  =  UInt32(164)
const CODEC_ID_TSCC2  =  UInt32(165)
const CODEC_ID_MTS2  =  UInt32(166)
const CODEC_ID_CLLC  =  UInt32(167)
const CODEC_ID_Y41P  =  UInt32(1496592720)
const CODEC_ID_ESCAPE130  =  UInt32(1160852272)
const CODEC_ID_EXR  =  UInt32(809850962)
const CODEC_ID_AVRP  =  UInt32(1096176208)
const CODEC_ID_G2M  =  UInt32(4665933)
const CODEC_ID_AVUI  =  UInt32(1096176969)
const CODEC_ID_AYUV  =  UInt32(1096373590)
const CODEC_ID_V308  =  UInt32(1446195256)
const CODEC_ID_V408  =  UInt32(1446260792)
const CODEC_ID_YUV4  =  UInt32(1498764852)
const CODEC_ID_SANM  =  UInt32(1396788813)
const CODEC_ID_PAF_VIDEO  =  UInt32(1346455126)
const CODEC_ID_SNOW  =  UInt32(1397641047)
const CODEC_ID_FIRST_AUDIO  =  UInt32(65536)
const CODEC_ID_PCM_S16LE  =  UInt32(65536)
const CODEC_ID_PCM_S16BE  =  UInt32(65537)
const CODEC_ID_PCM_U16LE  =  UInt32(65538)
const CODEC_ID_PCM_U16BE  =  UInt32(65539)
const CODEC_ID_PCM_S8  =  UInt32(65540)
const CODEC_ID_PCM_U8  =  UInt32(65541)
const CODEC_ID_PCM_MULAW  =  UInt32(65542)
const CODEC_ID_PCM_ALAW  =  UInt32(65543)
const CODEC_ID_PCM_S32LE  =  UInt32(65544)
const CODEC_ID_PCM_S32BE  =  UInt32(65545)
const CODEC_ID_PCM_U32LE  =  UInt32(65546)
const CODEC_ID_PCM_U32BE  =  UInt32(65547)
const CODEC_ID_PCM_S24LE  =  UInt32(65548)
const CODEC_ID_PCM_S24BE  =  UInt32(65549)
const CODEC_ID_PCM_U24LE  =  UInt32(65550)
const CODEC_ID_PCM_U24BE  =  UInt32(65551)
const CODEC_ID_PCM_S24DAUD  =  UInt32(65552)
const CODEC_ID_PCM_ZORK  =  UInt32(65553)
const CODEC_ID_PCM_S16LE_PLANAR  =  UInt32(65554)
const CODEC_ID_PCM_DVD  =  UInt32(65555)
const CODEC_ID_PCM_F32BE  =  UInt32(65556)
const CODEC_ID_PCM_F32LE  =  UInt32(65557)
const CODEC_ID_PCM_F64BE  =  UInt32(65558)
const CODEC_ID_PCM_F64LE  =  UInt32(65559)
const CODEC_ID_PCM_BLURAY  =  UInt32(65560)
const CODEC_ID_PCM_LXF  =  UInt32(65561)
const CODEC_ID_S302M  =  UInt32(65562)
const CODEC_ID_PCM_S8_PLANAR  =  UInt32(65563)
const CODEC_ID_ADPCM_IMA_QT  =  UInt32(69632)
const CODEC_ID_ADPCM_IMA_WAV  =  UInt32(69633)
const CODEC_ID_ADPCM_IMA_DK3  =  UInt32(69634)
const CODEC_ID_ADPCM_IMA_DK4  =  UInt32(69635)
const CODEC_ID_ADPCM_IMA_WS  =  UInt32(69636)
const CODEC_ID_ADPCM_IMA_SMJPEG  =  UInt32(69637)
const CODEC_ID_ADPCM_MS  =  UInt32(69638)
const CODEC_ID_ADPCM_4XM  =  UInt32(69639)
const CODEC_ID_ADPCM_XA  =  UInt32(69640)
const CODEC_ID_ADPCM_ADX  =  UInt32(69641)
const CODEC_ID_ADPCM_EA  =  UInt32(69642)
const CODEC_ID_ADPCM_G726  =  UInt32(69643)
const CODEC_ID_ADPCM_CT  =  UInt32(69644)
const CODEC_ID_ADPCM_SWF  =  UInt32(69645)
const CODEC_ID_ADPCM_YAMAHA  =  UInt32(69646)
const CODEC_ID_ADPCM_SBPRO_4  =  UInt32(69647)
const CODEC_ID_ADPCM_SBPRO_3  =  UInt32(69648)
const CODEC_ID_ADPCM_SBPRO_2  =  UInt32(69649)
const CODEC_ID_ADPCM_THP  =  UInt32(69650)
const CODEC_ID_ADPCM_IMA_AMV  =  UInt32(69651)
const CODEC_ID_ADPCM_EA_R1  =  UInt32(69652)
const CODEC_ID_ADPCM_EA_R3  =  UInt32(69653)
const CODEC_ID_ADPCM_EA_R2  =  UInt32(69654)
const CODEC_ID_ADPCM_IMA_EA_SEAD  =  UInt32(69655)
const CODEC_ID_ADPCM_IMA_EA_EACS  =  UInt32(69656)
const CODEC_ID_ADPCM_EA_XAS  =  UInt32(69657)
const CODEC_ID_ADPCM_EA_MAXIS_XA  =  UInt32(69658)
const CODEC_ID_ADPCM_IMA_ISS  =  UInt32(69659)
const CODEC_ID_ADPCM_G722  =  UInt32(69660)
const CODEC_ID_ADPCM_IMA_APC  =  UInt32(69661)
const CODEC_ID_VIMA  =  UInt32(1447644481)
const CODEC_ID_AMR_NB  =  UInt32(73728)
const CODEC_ID_AMR_WB  =  UInt32(73729)
const CODEC_ID_RA_144  =  UInt32(77824)
const CODEC_ID_RA_288  =  UInt32(77825)
const CODEC_ID_ROQ_DPCM  =  UInt32(81920)
const CODEC_ID_INTERPLAY_DPCM  =  UInt32(81921)
const CODEC_ID_XAN_DPCM  =  UInt32(81922)
const CODEC_ID_SOL_DPCM  =  UInt32(81923)
const CODEC_ID_MP2  =  UInt32(86016)
const CODEC_ID_MP3  =  UInt32(86017)
const CODEC_ID_AAC  =  UInt32(86018)
const CODEC_ID_AC3  =  UInt32(86019)
const CODEC_ID_DTS  =  UInt32(86020)
const CODEC_ID_VORBIS  =  UInt32(86021)
const CODEC_ID_DVAUDIO  =  UInt32(86022)
const CODEC_ID_WMAV1  =  UInt32(86023)
const CODEC_ID_WMAV2  =  UInt32(86024)
const CODEC_ID_MACE3  =  UInt32(86025)
const CODEC_ID_MACE6  =  UInt32(86026)
const CODEC_ID_VMDAUDIO  =  UInt32(86027)
const CODEC_ID_FLAC  =  UInt32(86028)
const CODEC_ID_MP3ADU  =  UInt32(86029)
const CODEC_ID_MP3ON4  =  UInt32(86030)
const CODEC_ID_SHORTEN  =  UInt32(86031)
const CODEC_ID_ALAC  =  UInt32(86032)
const CODEC_ID_WESTWOOD_SND1  =  UInt32(86033)
const CODEC_ID_GSM  =  UInt32(86034)
const CODEC_ID_QDM2  =  UInt32(86035)
const CODEC_ID_COOK  =  UInt32(86036)
const CODEC_ID_TRUESPEECH  =  UInt32(86037)
const CODEC_ID_TTA  =  UInt32(86038)
const CODEC_ID_SMACKAUDIO  =  UInt32(86039)
const CODEC_ID_QCELP  =  UInt32(86040)
const CODEC_ID_WAVPACK  =  UInt32(86041)
const CODEC_ID_DSICINAUDIO  =  UInt32(86042)
const CODEC_ID_IMC  =  UInt32(86043)
const CODEC_ID_MUSEPACK7  =  UInt32(86044)
const CODEC_ID_MLP  =  UInt32(86045)
const CODEC_ID_GSM_MS  =  UInt32(86046)
const CODEC_ID_ATRAC3  =  UInt32(86047)
const CODEC_ID_VOXWARE  =  UInt32(86048)
const CODEC_ID_APE  =  UInt32(86049)
const CODEC_ID_NELLYMOSER  =  UInt32(86050)
const CODEC_ID_MUSEPACK8  =  UInt32(86051)
const CODEC_ID_SPEEX  =  UInt32(86052)
const CODEC_ID_WMAVOICE  =  UInt32(86053)
const CODEC_ID_WMAPRO  =  UInt32(86054)
const CODEC_ID_WMALOSSLESS  =  UInt32(86055)
const CODEC_ID_ATRAC3P  =  UInt32(86056)
const CODEC_ID_EAC3  =  UInt32(86057)
const CODEC_ID_SIPR  =  UInt32(86058)
const CODEC_ID_MP1  =  UInt32(86059)
const CODEC_ID_TWINVQ  =  UInt32(86060)
const CODEC_ID_TRUEHD  =  UInt32(86061)
const CODEC_ID_MP4ALS  =  UInt32(86062)
const CODEC_ID_ATRAC1  =  UInt32(86063)
const CODEC_ID_BINKAUDIO_RDFT  =  UInt32(86064)
const CODEC_ID_BINKAUDIO_DCT  =  UInt32(86065)
const CODEC_ID_AAC_LATM  =  UInt32(86066)
const CODEC_ID_QDMC  =  UInt32(86067)
const CODEC_ID_CELT  =  UInt32(86068)
const CODEC_ID_G723_1  =  UInt32(86069)
const CODEC_ID_G729  =  UInt32(86070)
const CODEC_ID_8SVX_EXP  =  UInt32(86071)
const CODEC_ID_8SVX_FIB  =  UInt32(86072)
const CODEC_ID_BMV_AUDIO  =  UInt32(86073)
const CODEC_ID_RALF  =  UInt32(86074)
const CODEC_ID_IAC  =  UInt32(86075)
const CODEC_ID_ILBC  =  UInt32(86076)
const CODEC_ID_FFWAVESYNTH  =  UInt32(1179014995)
const CODEC_ID_SONIC  =  UInt32(1397706307)
const CODEC_ID_SONIC_LS  =  UInt32(1397706316)
const CODEC_ID_PAF_AUDIO  =  UInt32(1346455105)
const CODEC_ID_OPUS  =  UInt32(1330664787)
const CODEC_ID_FIRST_SUBTITLE  =  UInt32(94208)
const CODEC_ID_DVD_SUBTITLE  =  UInt32(94208)
const CODEC_ID_DVB_SUBTITLE  =  UInt32(94209)
const CODEC_ID_TEXT  =  UInt32(94210)
const CODEC_ID_XSUB  =  UInt32(94211)
const CODEC_ID_SSA  =  UInt32(94212)
const CODEC_ID_MOV_TEXT  =  UInt32(94213)
const CODEC_ID_HDMV_PGS_SUBTITLE  =  UInt32(94214)
const CODEC_ID_DVB_TELETEXT  =  UInt32(94215)
const CODEC_ID_SRT  =  UInt32(94216)
const CODEC_ID_MICRODVD  =  UInt32(1833195076)
const CODEC_ID_EIA_608  =  UInt32(1664495672)
const CODEC_ID_JACOSUB  =  UInt32(1246975298)
const CODEC_ID_SAMI  =  UInt32(1396788553)
const CODEC_ID_REALTEXT  =  UInt32(1381259348)
const CODEC_ID_SUBVIEWER  =  UInt32(1400201814)
const CODEC_ID_FIRST_UNKNOWN  =  UInt32(98304)
const CODEC_ID_TTF  =  UInt32(98304)
const CODEC_ID_BINTEXT  =  UInt32(1112823892)
const CODEC_ID_XBIN  =  UInt32(1480739150)
const CODEC_ID_IDF  =  UInt32(4801606)
const CODEC_ID_OTF  =  UInt32(5198918)
const CODEC_ID_PROBE  =  UInt32(102400)
const CODEC_ID_MPEG2TS  =  UInt32(131072)
const CODEC_ID_MPEG4SYSTEMS  =  UInt32(131073)
const CODEC_ID_FFMETADATA  =  UInt32(135168)
# end enum AVCodecID

const AV_CODEC_ID_H265  =  AV_CODEC_ID_HEVC
const AV_CODEC_PROP_INTRA_ONLY  =  1 << 0
const AV_CODEC_PROP_LOSSY  =  1 << 1
const AV_CODEC_PROP_LOSSLESS  =  1 << 2
const AV_CODEC_PROP_BITMAP_SUB  =  1 << 16
const AV_CODEC_PROP_TEXT_SUB  =  1 << 17
const FF_INPUT_BUFFER_PADDING_SIZE  =  32
const FF_MIN_BUFFER_SIZE  =  16384
const FF_MAX_B_FRAMES  =  16
const CODEC_FLAG_UNALIGNED  =  0x0001
const CODEC_FLAG_QSCALE  =  0x0002
const CODEC_FLAG_4MV  =  0x0004
const CODEC_FLAG_OUTPUT_CORRUPT  =  0x0008
const CODEC_FLAG_QPEL  =  0x0010
const CODEC_FLAG_GMC  =  0x0020
const CODEC_FLAG_MV0  =  0x0040
const CODEC_FLAG_INPUT_PRESERVED  =  0x0100
const CODEC_FLAG_PASS1  =  0x0200
const CODEC_FLAG_PASS2  =  0x0400
const CODEC_FLAG_GRAY  =  0x2000
const CODEC_FLAG_EMU_EDGE  =  0x4000
const CODEC_FLAG_PSNR  =  0x8000
const CODEC_FLAG_TRUNCATED  =  0x00010000
const CODEC_FLAG_NORMALIZE_AQP  =  0x00020000
const CODEC_FLAG_INTERLACED_DCT  =  0x00040000
const CODEC_FLAG_LOW_DELAY  =  0x00080000
const CODEC_FLAG_GLOBAL_HEADER  =  0x00400000
const CODEC_FLAG_BITEXACT  =  0x00800000
const CODEC_FLAG_AC_PRED  =  0x01000000
const CODEC_FLAG_LOOP_FILTER  =  0x00000800
const CODEC_FLAG_INTERLACED_ME  =  0x20000000
const CODEC_FLAG_CLOSED_GOP  =  0x80000000
const CODEC_FLAG2_FAST  =  0x00000001
const CODEC_FLAG2_NO_OUTPUT  =  0x00000004
const CODEC_FLAG2_LOCAL_HEADER  =  0x00000008
const CODEC_FLAG2_DROP_FRAME_TIMECODE  =  0x00002000
const CODEC_FLAG2_IGNORE_CROP  =  0x00010000
const CODEC_FLAG2_CHUNKS  =  0x00008000
const CODEC_FLAG2_SHOW_ALL  =  0x00400000
const CODEC_CAP_DRAW_HORIZ_BAND  =  0x0001
const CODEC_CAP_DR1  =  0x0002
const CODEC_CAP_TRUNCATED  =  0x0008
const CODEC_CAP_HWACCEL  =  0x0010
const CODEC_CAP_DELAY  =  0x0020
const CODEC_CAP_SMALL_LAST_FRAME  =  0x0040
const CODEC_CAP_HWACCEL_VDPAU  =  0x0080
const CODEC_CAP_SUBFRAMES  =  0x0100
const CODEC_CAP_EXPERIMENTAL  =  0x0200
const CODEC_CAP_CHANNEL_CONF  =  0x0400
const CODEC_CAP_NEG_LINESIZES  =  0x0800
const CODEC_CAP_FRAME_THREADS  =  0x1000
const CODEC_CAP_SLICE_THREADS  =  0x2000
const CODEC_CAP_PARAM_CHANGE  =  0x4000
const CODEC_CAP_AUTO_THREADS  =  0x8000
const CODEC_CAP_VARIABLE_FRAME_SIZE  =  0x00010000
const CODEC_CAP_INTRA_ONLY  =  0x40000000
const CODEC_CAP_LOSSLESS  =  0x80000000
const MB_TYPE_INTRA4x4  =  0x0001
const MB_TYPE_INTRA16x16  =  0x0002
const MB_TYPE_INTRA_PCM  =  0x0004
const MB_TYPE_16x16  =  0x0008
const MB_TYPE_16x8  =  0x0010
const MB_TYPE_8x16  =  0x0020
const MB_TYPE_8x8  =  0x0040
const MB_TYPE_INTERLACED  =  0x0080
const MB_TYPE_DIRECT2  =  0x0100
const MB_TYPE_ACPRED  =  0x0200
const MB_TYPE_GMC  =  0x0400
const MB_TYPE_SKIP  =  0x0800
const MB_TYPE_P0L0  =  0x1000
const MB_TYPE_P1L0  =  0x2000
const MB_TYPE_P0L1  =  0x4000
const MB_TYPE_P1L1  =  0x8000
const MB_TYPE_L0  =  MB_TYPE_P0L0 | MB_TYPE_P1L0
const MB_TYPE_L1  =  MB_TYPE_P0L1 | MB_TYPE_P1L1
const MB_TYPE_L0L1  =  MB_TYPE_L0 | MB_TYPE_L1
const MB_TYPE_QUANT  =  0x00010000
const MB_TYPE_CBP  =  0x00020000
const FF_QSCALE_TYPE_MPEG1  =  0
const FF_QSCALE_TYPE_MPEG2  =  1
const FF_QSCALE_TYPE_H264  =  2
const FF_QSCALE_TYPE_VP56  =  3
const FF_BUFFER_TYPE_INTERNAL  =  1
const FF_BUFFER_TYPE_USER  =  2
const FF_BUFFER_TYPE_SHARED  =  4
const FF_BUFFER_TYPE_COPY  =  8
const FF_BUFFER_HINTS_VALID  =  0x01
const FF_BUFFER_HINTS_READABLE  =  0x02
const FF_BUFFER_HINTS_PRESERVE  =  0x04
const FF_BUFFER_HINTS_REUSABLE  =  0x08
const AV_GET_BUFFER_FLAG_REF  =  1 << 0
const AV_PKT_FLAG_KEY  =  0x0001
const AV_PKT_FLAG_CORRUPT  =  0x0002
const FF_COMPRESSION_DEFAULT  =  -1
const FF_ASPECT_EXTENDED  =  15
const FF_RC_STRATEGY_XVID  =  1
const FF_PRED_LEFT  =  0
const FF_PRED_PLANE  =  1
const FF_PRED_MEDIAN  =  2
const FF_CMP_SAD  =  0
const FF_CMP_SSE  =  1
const FF_CMP_SATD  =  2
const FF_CMP_DCT  =  3
const FF_CMP_PSNR  =  4
const FF_CMP_BIT  =  5
const FF_CMP_RD  =  6
const FF_CMP_ZERO  =  7
const FF_CMP_VSAD  =  8
const FF_CMP_VSSE  =  9
const FF_CMP_NSSE  =  10
const FF_CMP_W53  =  11
const FF_CMP_W97  =  12
const FF_CMP_DCTMAX  =  13
const FF_CMP_DCT264  =  14
const FF_CMP_CHROMA  =  256
const FF_DTG_AFD_SAME  =  8
const FF_DTG_AFD_4_3  =  9
const FF_DTG_AFD_16_9  =  10
const FF_DTG_AFD_14_9  =  11
const FF_DTG_AFD_4_3_SP_14_9  =  13
const FF_DTG_AFD_16_9_SP_14_9  =  14
const FF_DTG_AFD_SP_4_3  =  15
const FF_DEFAULT_QUANT_BIAS  =  999999
const SLICE_FLAG_CODED_ORDER  =  0x0001
const SLICE_FLAG_ALLOW_FIELD  =  0x0002
const SLICE_FLAG_ALLOW_PLANE  =  0x0004
const FF_MB_DECISION_SIMPLE  =  0
const FF_MB_DECISION_BITS  =  1
const FF_MB_DECISION_RD  =  2
const FF_CODER_TYPE_VLC  =  0
const FF_CODER_TYPE_AC  =  1
const FF_CODER_TYPE_RAW  =  2
const FF_CODER_TYPE_RLE  =  3
const FF_CODER_TYPE_DEFLATE  =  4
const FF_BUG_AUTODETECT  =  1
const FF_BUG_OLD_MSMPEG4  =  2
const FF_BUG_XVID_ILACE  =  4
const FF_BUG_UMP4  =  8
const FF_BUG_NO_PADDING  =  16
const FF_BUG_AMV  =  32
const FF_BUG_AC_VLC  =  0
const FF_BUG_QPEL_CHROMA  =  64
const FF_BUG_STD_QPEL  =  128
const FF_BUG_QPEL_CHROMA2  =  256
const FF_BUG_DIRECT_BLOCKSIZE  =  512
const FF_BUG_EDGE  =  1024
const FF_BUG_HPEL_CHROMA  =  2048
const FF_BUG_DC_CLIP  =  4096
const FF_BUG_MS  =  8192
const FF_BUG_TRUNCATED  =  16384
const FF_COMPLIANCE_VERY_STRICT  =  2
const FF_COMPLIANCE_STRICT  =  1
const FF_COMPLIANCE_NORMAL  =  0
const FF_COMPLIANCE_UNOFFICIAL  =  -1
const FF_COMPLIANCE_EXPERIMENTAL  =  -2
const FF_EC_GUESS_MVS  =  1
const FF_EC_DEBLOCK  =  2
const FF_EC_FAVOR_INTER  =  256
const FF_DEBUG_PICT_INFO  =  1
const FF_DEBUG_RC  =  2
const FF_DEBUG_BITSTREAM  =  4
const FF_DEBUG_MB_TYPE  =  8
const FF_DEBUG_QP  =  16
const FF_DEBUG_MV  =  32
const FF_DEBUG_DCT_COEFF  =  0x00000040
const FF_DEBUG_SKIP  =  0x00000080
const FF_DEBUG_STARTCODE  =  0x00000100
const FF_DEBUG_PTS  =  0x00000200
const FF_DEBUG_ER  =  0x00000400
const FF_DEBUG_MMCO  =  0x00000800
const FF_DEBUG_BUGS  =  0x00001000
const FF_DEBUG_VIS_QP  =  0x00002000
const FF_DEBUG_VIS_MB_TYPE  =  0x00004000
const FF_DEBUG_BUFFERS  =  0x00008000
const FF_DEBUG_THREADS  =  0x00010000
const FF_DEBUG_NOMC  =  0x01000000
const FF_DEBUG_VIS_MV_P_FOR  =  0x00000001
const FF_DEBUG_VIS_MV_B_FOR  =  0x00000002
const FF_DEBUG_VIS_MV_B_BACK  =  0x00000004
const AV_EF_CRCCHECK  =  1 << 0
const AV_EF_BITSTREAM  =  1 << 1
const AV_EF_BUFFER  =  1 << 2
const AV_EF_EXPLODE  =  1 << 3
const AV_EF_IGNORE_ERR  =  1 << 15
const AV_EF_CAREFUL  =  1 << 16
const AV_EF_COMPLIANT  =  1 << 17
const AV_EF_AGGRESSIVE  =  1 << 18
const FF_DCT_AUTO  =  0
const FF_DCT_FASTINT  =  1
const FF_DCT_INT  =  2
const FF_DCT_MMX  =  3
const FF_DCT_ALTIVEC  =  5
const FF_DCT_FAAN  =  6
const FF_IDCT_AUTO  =  0
const FF_IDCT_INT  =  1
const FF_IDCT_SIMPLE  =  2
const FF_IDCT_SIMPLEMMX  =  3
const FF_IDCT_ARM  =  7
const FF_IDCT_ALTIVEC  =  8
const FF_IDCT_SH4  =  9
const FF_IDCT_SIMPLEARM  =  10
const FF_IDCT_IPP  =  13
const FF_IDCT_XVIDMMX  =  14
const FF_IDCT_SIMPLEARMV5TE  =  16
const FF_IDCT_SIMPLEARMV6  =  17
const FF_IDCT_SIMPLEVIS  =  18
const FF_IDCT_FAAN  =  20
const FF_IDCT_SIMPLENEON  =  22
const FF_IDCT_SIMPLEALPHA  =  23
const FF_IDCT_SIMPLEAUTO  =  128
const FF_THREAD_FRAME  =  1
const FF_THREAD_SLICE  =  2
const FF_PROFILE_UNKNOWN  =  -99
const FF_PROFILE_RESERVED  =  -100
const FF_PROFILE_AAC_MAIN  =  0
const FF_PROFILE_AAC_LOW  =  1
const FF_PROFILE_AAC_SSR  =  2
const FF_PROFILE_AAC_LTP  =  3
const FF_PROFILE_AAC_HE  =  4
const FF_PROFILE_AAC_HE_V2  =  28
const FF_PROFILE_AAC_LD  =  22
const FF_PROFILE_AAC_ELD  =  38
const FF_PROFILE_MPEG2_AAC_LOW  =  128
const FF_PROFILE_MPEG2_AAC_HE  =  131
const FF_PROFILE_DTS  =  20
const FF_PROFILE_DTS_ES  =  30
const FF_PROFILE_DTS_96_24  =  40
const FF_PROFILE_DTS_HD_HRA  =  50
const FF_PROFILE_DTS_HD_MA  =  60
const FF_PROFILE_MPEG2_422  =  0
const FF_PROFILE_MPEG2_HIGH  =  1
const FF_PROFILE_MPEG2_SS  =  2
const FF_PROFILE_MPEG2_SNR_SCALABLE  =  3
const FF_PROFILE_MPEG2_MAIN  =  4
const FF_PROFILE_MPEG2_SIMPLE  =  5
const FF_PROFILE_H264_CONSTRAINED  =  1 << 9
const FF_PROFILE_H264_INTRA  =  1 << 11
const FF_PROFILE_H264_BASELINE  =  66
const FF_PROFILE_H264_CONSTRAINED_BASELINE  =  66 | FF_PROFILE_H264_CONSTRAINED
const FF_PROFILE_H264_MAIN  =  77
const FF_PROFILE_H264_EXTENDED  =  88
const FF_PROFILE_H264_HIGH  =  100
const FF_PROFILE_H264_HIGH_10  =  110
const FF_PROFILE_H264_HIGH_10_INTRA  =  110 | FF_PROFILE_H264_INTRA
const FF_PROFILE_H264_HIGH_422  =  122
const FF_PROFILE_H264_HIGH_422_INTRA  =  122 | FF_PROFILE_H264_INTRA
const FF_PROFILE_H264_HIGH_444  =  144
const FF_PROFILE_H264_HIGH_444_PREDICTIVE  =  244
const FF_PROFILE_H264_HIGH_444_INTRA  =  244 | FF_PROFILE_H264_INTRA
const FF_PROFILE_H264_CAVLC_444  =  44
const FF_PROFILE_VC1_SIMPLE  =  0
const FF_PROFILE_VC1_MAIN  =  1
const FF_PROFILE_VC1_COMPLEX  =  2
const FF_PROFILE_VC1_ADVANCED  =  3
const FF_PROFILE_MPEG4_SIMPLE  =  0
const FF_PROFILE_MPEG4_SIMPLE_SCALABLE  =  1
const FF_PROFILE_MPEG4_CORE  =  2
const FF_PROFILE_MPEG4_MAIN  =  3
const FF_PROFILE_MPEG4_N_BIT  =  4
const FF_PROFILE_MPEG4_SCALABLE_TEXTURE  =  5
const FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION  =  6
const FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE  =  7
const FF_PROFILE_MPEG4_HYBRID  =  8
const FF_PROFILE_MPEG4_ADVANCED_REAL_TIME  =  9
const FF_PROFILE_MPEG4_CORE_SCALABLE  =  10
const FF_PROFILE_MPEG4_ADVANCED_CODING  =  11
const FF_PROFILE_MPEG4_ADVANCED_CORE  =  12
const FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE  =  13
const FF_PROFILE_MPEG4_SIMPLE_STUDIO  =  14
const FF_PROFILE_MPEG4_ADVANCED_SIMPLE  =  15
const FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_0  =  0
const FF_PROFILE_JPEG2000_CSTREAM_RESTRICTION_1  =  1
const FF_PROFILE_JPEG2000_CSTREAM_NO_RESTRICTION  =  2
const FF_PROFILE_JPEG2000_DCINEMA_2K  =  3
const FF_PROFILE_JPEG2000_DCINEMA_4K  =  4
const FF_PROFILE_HEVC_MAIN  =  1
const FF_PROFILE_HEVC_MAIN_10  =  2
const FF_PROFILE_HEVC_MAIN_STILL_PICTURE  =  3
const FF_PROFILE_HEVC_REXT  =  4
const FF_LEVEL_UNKNOWN  =  -99
const FF_SUB_CHARENC_MODE_DO_NOTHING  =  -1
const FF_SUB_CHARENC_MODE_AUTOMATIC  =  0
const FF_SUB_CHARENC_MODE_PRE_DECODER  =  1
const AV_SUBTITLE_FLAG_FORCED  =  0x00000001
const AV_PARSER_PTS_NB  =  4
const PARSER_FLAG_COMPLETE_FRAMES  =  0x0001
const PARSER_FLAG_ONCE  =  0x0002
const PARSER_FLAG_FETCHED_OFFSET  =  0x0004
const PARSER_FLAG_USE_CODEC_TS  =  0x1000

immutable AVCodecDescriptor
    id::AVCodecID
    _type::AVMediaType
    name::Ptr{UInt8}
    long_name::Ptr{UInt8}
    props::Cint
    mime_types::Ptr{Ptr{UInt8}}
end

# begin enum Motion_Est_ID
const Motion_Est_ID = UInt32
const ME_ZERO  =  UInt32(1)
const ME_FULL  =  UInt32(2)
const ME_LOG  =  UInt32(3)
const ME_PHODS  =  UInt32(4)
const ME_EPZS  =  UInt32(5)
const ME_X1  =  UInt32(6)
const ME_HEX  =  UInt32(7)
const ME_UMH  =  UInt32(8)
const ME_TESA  =  UInt32(9)
const ME_ITER  =  UInt32(50)
# end enum Motion_Est_ID

# begin enum AVDiscard
const AVDiscard = Cint
const AVDISCARD_NONE  =  Int32(-16)
const AVDISCARD_DEFAULT  =  Int32(0)
const AVDISCARD_NONREF  =  Int32(8)
const AVDISCARD_BIDIR  =  Int32(16)
const AVDISCARD_NONINTRA  =  Int32(24)
const AVDISCARD_NONKEY  =  Int32(32)
const AVDISCARD_ALL  =  Int32(48)
# end enum AVDiscard

# begin enum AVAudioServiceType
const AVAudioServiceType = UInt32
const AV_AUDIO_SERVICE_TYPE_MAIN  =  UInt32(0)
const AV_AUDIO_SERVICE_TYPE_EFFECTS  =  UInt32(1)
const AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED  =  UInt32(2)
const AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED  =  UInt32(3)
const AV_AUDIO_SERVICE_TYPE_DIALOGUE  =  UInt32(4)
const AV_AUDIO_SERVICE_TYPE_COMMENTARY  =  UInt32(5)
const AV_AUDIO_SERVICE_TYPE_EMERGENCY  =  UInt32(6)
const AV_AUDIO_SERVICE_TYPE_VOICE_OVER  =  UInt32(7)
const AV_AUDIO_SERVICE_TYPE_KARAOKE  =  UInt32(8)
const AV_AUDIO_SERVICE_TYPE_NB  =  UInt32(9)
# end enum AVAudioServiceType

immutable RcOverride
    start_frame::Cint
    end_frame::Cint
    qscale::Cint
    quality_factor::Cfloat
end

immutable Array_2_Int16
    d1::Int16
    d2::Int16
end

zero(::Type{Array_2_Int16}) = Array_2_Int16(fill(zero(Int16),2)...)

immutable Array_3_Array_2_Int16
    d1::Array_2_Int16
    d2::Array_2_Int16
    d3::Array_2_Int16
end

zero(::Type{Array_3_Array_2_Int16}) = Array_3_Array_2_Int16(fill(zero(Array_2_Int16),3)...)

immutable AVPanScan
    id::Cint
    width::Cint
    height::Cint
    position::Array_3_Array_2_Int16
end

# begin enum AVPacketSideDataType
const AVPacketSideDataType = UInt32
const AV_PKT_DATA_PALETTE  =  UInt32(0)
const AV_PKT_DATA_NEW_EXTRADATA  =  UInt32(1)
const AV_PKT_DATA_PARAM_CHANGE  =  UInt32(2)
const AV_PKT_DATA_H263_MB_INFO  =  UInt32(3)
const AV_PKT_DATA_REPLAYGAIN  =  UInt32(4)
const AV_PKT_DATA_DISPLAYMATRIX  =  UInt32(5)
const AV_PKT_DATA_SKIP_SAMPLES  =  UInt32(70)
const AV_PKT_DATA_JP_DUALMONO  =  UInt32(71)
const AV_PKT_DATA_STRINGS_METADATA  =  UInt32(72)
const AV_PKT_DATA_SUBTITLE_POSITION  =  UInt32(73)
const AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL  =  UInt32(74)
const AV_PKT_DATA_WEBVTT_IDENTIFIER  =  UInt32(75)
const AV_PKT_DATA_WEBVTT_SETTINGS  =  UInt32(76)
const AV_PKT_DATA_METADATA_UPDATE  =  UInt32(77)
# end enum AVPacketSideDataType

immutable AVPacketSideData
    data::Ptr{UInt8}
    size::Cint
    _type::AVPacketSideDataType
end

immutable AVPacket
    buf::Ptr{AVBufferRef}
    pts::Int64
    dts::Int64
    data::Ptr{UInt8}
    size::Cint
    stream_index::Cint
    flags::Cint
    side_data::Ptr{AVPacketSideData}
    side_data_elems::Cint
    duration::Cint
    destruct::Ptr{Void}
    priv::Ptr{Void}
    pos::Int64
    convergence_duration::Int64
end

# begin enum AVSideDataParamChangeFlags
const AVSideDataParamChangeFlags = UInt32
const AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT  =  UInt32(1)
const AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT  =  UInt32(2)
const AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE  =  UInt32(4)
const AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS  =  UInt32(8)
# end enum AVSideDataParamChangeFlags

const AVCodecInternal = Void

# begin enum AVFieldOrder
const AVFieldOrder = UInt32
const AV_FIELD_UNKNOWN  =  UInt32(0)
const AV_FIELD_PROGRESSIVE  =  UInt32(1)
const AV_FIELD_TT  =  UInt32(2)
const AV_FIELD_BB  =  UInt32(3)
const AV_FIELD_TB  =  UInt32(4)
const AV_FIELD_BT  =  UInt32(5)
# end enum AVFieldOrder

immutable Array_32_Uint8
    d1::UInt8
    d2::UInt8
    d3::UInt8
    d4::UInt8
    d5::UInt8
    d6::UInt8
    d7::UInt8
    d8::UInt8
    d9::UInt8
    d10::UInt8
    d11::UInt8
    d12::UInt8
    d13::UInt8
    d14::UInt8
    d15::UInt8
    d16::UInt8
    d17::UInt8
    d18::UInt8
    d19::UInt8
    d20::UInt8
    d21::UInt8
    d22::UInt8
    d23::UInt8
    d24::UInt8
    d25::UInt8
    d26::UInt8
    d27::UInt8
    d28::UInt8
    d29::UInt8
    d30::UInt8
    d31::UInt8
    d32::UInt8
end

zero(::Type{Array_32_Uint8}) = Array_32_Uint8(fill(zero(UInt8),32)...)

immutable Array_8_Uint64
    d1::UInt64
    d2::UInt64
    d3::UInt64
    d4::UInt64
    d5::UInt64
    d6::UInt64
    d7::UInt64
    d8::UInt64
end

zero(::Type{Array_8_Uint64}) = Array_8_Uint64(fill(zero(UInt64),8)...)

immutable AVProfile
    profile::Cint
    name::Ptr{UInt8}
end

const AVCodecDefault = Void

immutable AVCodec
    name::Ptr{UInt8}
    long_name::Ptr{UInt8}
    _type::AVMediaType
    id::AVCodecID
    capabilities::Cint
    supported_framerates::Ptr{AVRational}
    pix_fmts::Ptr{AVPixelFormat}
    supported_samplerates::Ptr{Cint}
    sample_fmts::Ptr{AVSampleFormat}
    channel_layouts::Ptr{UInt64}
    max_lowres::UInt8
    priv_class::Ptr{AVClass}
    profiles::Ptr{AVProfile}
    priv_data_size::Cint
    next::Ptr{AVCodec}
    init_thread_copy::Ptr{Void}
    update_thread_context::Ptr{Void}
    defaults::Ptr{AVCodecDefault}
    init_static_data::Ptr{Void}
    init::Ptr{Void}
    encode_sub::Ptr{Void}
    encode2::Ptr{Void}
    decode::Ptr{Void}
    close::Ptr{Void}
    flush::Ptr{Void}
end

immutable AVHWAccel
    name::Ptr{UInt8}
    _type::AVMediaType
    id::AVCodecID
    pix_fmt::AVPixelFormat
    capabilities::Cint
    next::Ptr{AVHWAccel}
    alloc_frame::Ptr{Void}
    start_frame::Ptr{Void}
    decode_slice::Ptr{Void}
    end_frame::Ptr{Void}
    frame_priv_data_size::Cint
    decode_mb::Ptr{Void}
    init::Ptr{Void}
    uninit::Ptr{Void}
    priv_data_size::Cint
end

# const AVFrame = Void

immutable AVCodecContext
    av_class::Ptr{AVClass}
    log_level_offset::Cint
    codec_type::AVMediaType
    codec::Ptr{AVCodec}
    codec_name::Array_32_Uint8
    codec_id::AVCodecID
    codec_tag::UInt32
    stream_codec_tag::UInt32
    priv_data::Ptr{Void}
    internal::Ptr{AVCodecInternal}
    opaque::Ptr{Void}
    bit_rate::Cint
    bit_rate_tolerance::Cint
    global_quality::Cint
    compression_level::Cint
    flags::Cint
    flags2::Cint
    extradata::Ptr{UInt8}
    extradata_size::Cint
    time_base::AVRational
    ticks_per_frame::Cint
    delay::Cint
    width::Cint
    height::Cint
    coded_width::Cint
    coded_height::Cint
    gop_size::Cint
    pix_fmt::AVPixelFormat
    me_method::Cint
    draw_horiz_band::Ptr{Void}
    get_format::Ptr{Void}
    max_b_frames::Cint
    b_quant_factor::Cfloat
    rc_strategy::Cint
    b_frame_strategy::Cint
    b_quant_offset::Cfloat
    has_b_frames::Cint
    mpeg_quant::Cint
    i_quant_factor::Cfloat
    i_quant_offset::Cfloat
    lumi_masking::Cfloat
    temporal_cplx_masking::Cfloat
    spatial_cplx_masking::Cfloat
    p_masking::Cfloat
    dark_masking::Cfloat
    slice_count::Cint
    prediction_method::Cint
    slice_offset::Ptr{Cint}
    sample_aspect_ratio::AVRational
    me_cmp::Cint
    me_sub_cmp::Cint
    mb_cmp::Cint
    ildct_cmp::Cint
    dia_size::Cint
    last_predictor_count::Cint
    pre_me::Cint
    me_pre_cmp::Cint
    pre_dia_size::Cint
    me_subpel_quality::Cint
    dtg_active_format::Cint
    me_range::Cint
    intra_quant_bias::Cint
    inter_quant_bias::Cint
    slice_flags::Cint
    xvmc_acceleration::Cint
    mb_decision::Cint
    intra_matrix::Ptr{UInt16}
    inter_matrix::Ptr{UInt16}
    scenechange_threshold::Cint
    noise_reduction::Cint
    me_threshold::Cint
    mb_threshold::Cint
    intra_dc_precision::Cint
    skip_top::Cint
    skip_bottom::Cint
    border_masking::Cfloat
    mb_lmin::Cint
    mb_lmax::Cint
    me_penalty_compensation::Cint
    bidir_refine::Cint
    brd_scale::Cint
    keyint_min::Cint
    refs::Cint
    chromaoffset::Cint
    scenechange_factor::Cint
    mv0_threshold::Cint
    b_sensitivity::Cint
    color_primaries::AVColorPrimaries
    color_trc::AVColorTransferCharacteristic
    colorspace::AVColorSpace
    color_range::AVColorRange
    chroma_sample_location::AVChromaLocation
    slices::Cint
    field_order::AVFieldOrder
    sample_rate::Cint
    channels::Cint
    sample_fmt::AVSampleFormat
    frame_size::Cint
    frame_number::Cint
    block_align::Cint
    cutoff::Cint
    request_channels::Cint
    channel_layout::UInt64
    request_channel_layout::UInt64
    audio_service_type::AVAudioServiceType
    request_sample_fmt::AVSampleFormat
    get_buffer::Ptr{Void}
    release_buffer::Ptr{Void}
    reget_buffer::Ptr{Void}
    get_buffer2::Ptr{Void}
    refcounted_frames::Cint
    qcompress::Cfloat
    qblur::Cfloat
    qmin::Cint
    qmax::Cint
    max_qdiff::Cint
    rc_qsquish::Cfloat
    rc_qmod_amp::Cfloat
    rc_qmod_freq::Cint
    rc_buffer_size::Cint
    rc_override_count::Cint
    rc_override::Ptr{RcOverride}
    rc_eq::Ptr{UInt8}
    rc_max_rate::Cint
    rc_min_rate::Cint
    rc_buffer_aggressivity::Cfloat
    rc_initial_cplx::Cfloat
    rc_max_available_vbv_use::Cfloat
    rc_min_vbv_overflow_use::Cfloat
    rc_initial_buffer_occupancy::Cint
    coder_type::Cint
    context_model::Cint
    lmin::Cint
    lmax::Cint
    frame_skip_threshold::Cint
    frame_skip_factor::Cint
    frame_skip_exp::Cint
    frame_skip_cmp::Cint
    trellis::Cint
    min_prediction_order::Cint
    max_prediction_order::Cint
    timecode_frame_start::Int64
    rtp_callback::Ptr{Void}
    rtp_payload_size::Cint
    mv_bits::Cint
    header_bits::Cint
    i_tex_bits::Cint
    p_tex_bits::Cint
    i_count::Cint
    p_count::Cint
    skip_count::Cint
    misc_bits::Cint
    frame_bits::Cint
    stats_out::Ptr{UInt8}
    stats_in::Ptr{UInt8}
    workaround_bugs::Cint
    strict_std_compliance::Cint
    error_concealment::Cint
    debug::Cint
    debug_mv::Cint
    err_recognition::Cint
    reordered_opaque::Int64
    hwaccel::Ptr{AVHWAccel}
    hwaccel_context::Ptr{Void}
    error::Array_8_Uint64
    dct_algo::Cint
    idct_algo::Cint
    bits_per_coded_sample::Cint
    bits_per_raw_sample::Cint
    lowres::Cint
    coded_frame::Ptr{AVFrame}
    thread_count::Cint
    thread_type::Cint
    active_thread_type::Cint
    thread_safe_callbacks::Cint
    execute::Ptr{Void}
    execute2::Ptr{Void}
    thread_opaque::Ptr{Void}
    nsse_weight::Cint
    profile::Cint
    level::Cint
    skip_loop_filter::AVDiscard
    skip_idct::AVDiscard
    skip_frame::AVDiscard
    subtitle_header::Ptr{UInt8}
    subtitle_header_size::Cint
    error_rate::Cint
    pkt::Ptr{AVPacket}
    vbv_delay::UInt64
    side_data_only_packets::Cint
    pkt_timebase::AVRational
    codec_descriptor::Ptr{AVCodecDescriptor}
    pts_correction_num_faulty_pts::Int64
    pts_correction_num_faulty_dts::Int64
    pts_correction_last_pts::Int64
    pts_correction_last_dts::Int64
    sub_charenc::Ptr{UInt8}
    sub_charenc_mode::Cint
    skip_alpha::Cint
    seek_preroll::Cint
    chroma_intra_matrix::Ptr{UInt16}
end

immutable Array_8_Ptr
    d1::Ptr{UInt8}
    d2::Ptr{UInt8}
    d3::Ptr{UInt8}
    d4::Ptr{UInt8}
    d5::Ptr{UInt8}
    d6::Ptr{UInt8}
    d7::Ptr{UInt8}
    d8::Ptr{UInt8}
end

zero(::Type{Array_8_Ptr}) = Array_8_Ptr(fill(C_NULL,8)...)

immutable Array_8_Cint
    d1::Cint
    d2::Cint
    d3::Cint
    d4::Cint
    d5::Cint
    d6::Cint
    d7::Cint
    d8::Cint
end

zero(::Type{Array_8_Cint}) = Array_8_Cint(fill(zero(Cint),8)...)

immutable AVPicture
    data::Array_8_Ptr
    linesize::Array_8_Cint
end

# begin enum AVSubtitleType
const AVSubtitleType = UInt32
const SUBTITLE_NONE  =  UInt32(0)
const SUBTITLE_BITMAP  =  UInt32(1)
const SUBTITLE_TEXT  =  UInt32(2)
const SUBTITLE_ASS  =  UInt32(3)
# end enum AVSubtitleType

immutable AVSubtitleRect
    x::Cint
    y::Cint
    w::Cint
    h::Cint
    nb_colors::Cint
    pict::AVPicture
    _type::AVSubtitleType
    text::Ptr{UInt8}
    ass::Ptr{UInt8}
    flags::Cint
end

immutable AVSubtitle
    format::UInt16
    start_display_time::UInt32
    end_display_time::UInt32
    num_rects::UInt32
    rects::Ptr{Ptr{AVSubtitleRect}}
    pts::Int64
end

const MpegEncContext = Void

# begin enum AVPictureStructure
const AVPictureStructure = UInt32
const AV_PICTURE_STRUCTURE_UNKNOWN  =  UInt32(0)
const AV_PICTURE_STRUCTURE_TOP_FIELD  =  UInt32(1)
const AV_PICTURE_STRUCTURE_BOTTOM_FIELD  =  UInt32(2)
const AV_PICTURE_STRUCTURE_FRAME  =  UInt32(3)
# end enum AVPictureStructure

immutable Array_4_Int64
    d1::Int64
    d2::Int64
    d3::Int64
    d4::Int64
end

zero(::Type{Array_4_Int64}) = Array_4_Int64(fill(zero(Int64),4)...)

immutable Array_5_Cint
    d1::Cint
    d2::Cint
    d3::Cint
    d4::Cint
    d5::Cint
end

zero(::Type{Array_5_Cint}) = Array_5_Cint(fill(zero(Cint),5)...)

immutable AVCodecParser
    codec_ids::Array_5_Cint
    priv_data_size::Cint
    parser_init::Ptr{Void}
    parser_parse::Ptr{Void}
    parser_close::Ptr{Void}
    split::Ptr{Void}
    next::Ptr{AVCodecParser}
end

immutable AVCodecParserContext
    priv_data::Ptr{Void}
    parser::Ptr{AVCodecParser}
    frame_offset::Int64
    cur_offset::Int64
    next_frame_offset::Int64
    pict_type::Cint
    repeat_pict::Cint
    pts::Int64
    dts::Int64
    last_pts::Int64
    last_dts::Int64
    fetch_timestamp::Cint
    cur_frame_start_index::Cint
    cur_frame_offset::Array_4_Int64
    cur_frame_pts::Array_4_Int64
    cur_frame_dts::Array_4_Int64
    flags::Cint
    offset::Int64
    cur_frame_end::Array_4_Int64
    key_frame::Cint
    convergence_duration::Int64
    dts_sync_point::Cint
    dts_ref_dts_delta::Cint
    pts_dts_delta::Cint
    cur_frame_pos::Array_4_Int64
    pos::Int64
    last_pos::Int64
    duration::Cint
    field_order::AVFieldOrder
    picture_structure::AVPictureStructure
    output_picture_number::Cint
end

const ReSampleContext = Void
const AVResampleContext = Void

immutable AVBitStreamFilter
    name::Ptr{UInt8}
    priv_data_size::Cint
    filter::Ptr{Void}
    close::Ptr{Void}
    next::Ptr{AVBitStreamFilter}
end

immutable AVBitStreamFilterContext
    priv_data::Ptr{Void}
    filter::Ptr{AVBitStreamFilter}
    parser::Ptr{AVCodecParserContext}
    next::Ptr{AVBitStreamFilterContext}
end

# begin enum AVLockOp
const AVLockOp = UInt32
const AV_LOCK_CREATE  =  UInt32(0)
const AV_LOCK_OBTAIN  =  UInt32(1)
const AV_LOCK_RELEASE  =  UInt32(2)
const AV_LOCK_DESTROY  =  UInt32(3)
# end enum AVLockOp

const DV_PROFILE_BYTES  =  6 * 80

immutable Array_2_AVRational
    d1::AVRational
    d2::AVRational
end

zero(::Type{Array_2_AVRational}) = Array_2_AVRational(fill(zero(AVRational),2)...)

immutable Array_3_Cint
    d1::Cint
    d2::Cint
    d3::Cint
end

zero(::Type{Array_3_Cint}) = Array_3_Cint(fill(zero(Cint),3)...)

immutable AVDVProfile
    dsf::Cint
    video_stype::Cint
    frame_size::Cint
    difseg_size::Cint
    n_difchan::Cint
    time_base::AVRational
    ltc_divisor::Cint
    height::Cint
    width::Cint
    sar::Array_2_AVRational
    pix_fmt::AVPixelFormat
    bpm::Cint
    block_sizes::Ptr{UInt8}
    audio_stride::Cint
    audio_min_samples::Array_3_Cint
    audio_samples_dist::Array_5_Cint
    audio_shuffle::Ptr{Void}
end

# immutable vaapi_context
#     display::Ptr{Void}
#     config_id::UInt32
#     context_id::UInt32
#     pic_param_buf_id::UInt32
#     iq_matrix_buf_id::UInt32
#     bitplane_buf_id::UInt32
#     slice_buf_ids::Ptr{UInt32}
#     n_slice_buf_ids::UInt32
#     slice_buf_ids_alloc::UInt32
#     slice_params::Ptr{Void}
#     slice_param_size::UInt32
#     slice_params_alloc::UInt32
#     slice_count::UInt32
#     slice_data::Ptr{UInt8}
#     slice_data_size::UInt32
# end

# const FF_VDPAU_STATE_USED_FOR_RENDER  =  1
# const FF_VDPAU_STATE_USED_FOR_REFERENCE  =  2

# immutable AVVDPAUPictureInfo
#     _AVVDPAUPictureInfo::VdpPictureInfoMPEG4Part2
# end

# const AVVDPAU_Render2 = Ptr{Void}

# immutable AVVDPAUContext
#     decoder::VdpDecoder
#     render::Ptr{VdpDecoderRender}
#     info::AVVDPAUPictureInfo
#     bitstream_buffers_allocated::Cint
#     bitstream_buffers_used::Cint
#     bitstream_buffers::Ptr{VdpBitstreamBuffer}
#     render2::AVVDPAU_Render2
# end

# immutable vdpau_render_state
#     surface::VdpVideoSurface
#     state::Cint
#     bitstream_buffers_allocated::Cint
#     bitstream_buffers_used::Cint
#     bitstream_buffers::Ptr{VdpBitstreamBuffer}
#     info::AVVDPAUPictureInfo
# end

# const AV_XVMC_ID  =  0x1dc711c0

# immutable xvmc_pix_fmt
#     xvmc_id::Cint
#     data_blocks::Ptr{Int16}
#     mv_blocks::Ptr{XvMCMacroBlock}
#     allocated_mv_blocks::Cint
#     allocated_data_blocks::Cint
#     idct::Cint
#     unsigned_intra::Cint
#     p_surface::Ptr{XvMCSurface}
#     p_past_surface::Ptr{XvMCSurface}
#     p_future_surface::Ptr{XvMCSurface}
#     picture_structure::UInt32
#     flags::UInt32
#     start_mv_blocks_num::Cint
#     filled_mv_blocks_num::Cint
#     next_free_data_block_num::Cint
# end
